前台代码,将当前页面的html内容另存为html从后台到本地功能

/**
 * 前台代码-->将当前页面的html内容另存为html到本地功能
 * @param obj
 */
function saveAs(){
    //html页面名称
    //var htmlTitle = document.getElementsByTagName('title')[0].innerText;
    
    //获取富文本编辑内容
    var editContent = CKEDITOR.instances.applydescript.getData();
    
    //css样式路径
    var styleFiles = getLinks();
    
    //html内容
    var htmlContent = ""+updateLinks()+"

//alert(htmlContent);
    //return;
    
    //页面id
    var subformpk = $("#id").val();
    
    //获取唯一ID
    var id = guid();
    //alert(id);
    
    //文件名称
    var fileName = $("#applyname").html();
    if(fileName == ""){
        fileName = $("#applyname").val();
    }
    if(document.readyState == "complete"){
        var params = {
                styleFiles:styleFiles,
                htmlContent:htmlContent,
                fileName:fileName,
                subformpk:subformpk,
                id:id,
                editContent:editContent,
                filetype:"MARKETING_FILE,REMUNERATION_FILE,CHARGING_FILE,MAR_OTHER_FILE",
            };
            showLoading("正在另存为,请稍后...");

$.ajax({
                type: "POST",
                url: contextPath+"/html/html_htmlSaveAs.do",
                data: params,
                dataType: "json",
                success: function() {
                    hideLoading();
                    window.open(contextPath+"/html/html_downloadZipFile.do?fileName="+encodeURIComponent(id+"/"+fileName));
                    layer.msg("另存为成功");
                    //window.location.reload();
                    $(".pop-mask").fadeOut(500);
                    $(".pop-wrap").fadeOut(500);
                },
                error: function (XMLHttpRequest, textStatus, errorThrown) {
                    hideLoading();
                    layer.msg("另存为失败!");
                }
            });
            
    }
}

/*
 * 获取样式路径
 */
function getLinks(){
    var port = window.location.port;
    var links = document.getElementsByTagName("link");
    var link = new Array();
    for(var i=0;i         var item = links[i].getAttribute('href');
        if(item.match(port)){
            var a = item.split(port)[1];
            link.unshift(a);
        }else{
            link.unshift(item);
        }
    }
    var styleFiles = link.toString();
    return styleFiles;
}

/*
 * 修改另存为html页面
 */
function updateLinks(){
    if(document.readyState == "complete"){
        /*
        //添加富文本内容
        var editIframeObjs = document.getElementsByClassName("cke_wysiwyg_frame");
        var editIframeObj = editIframeObjs[0];
        //富文本编辑器内容
        var editContent = CKEDITOR.instances.applydescript.getData();
        var parent =editIframeObj.parentNode;
        var edit_div = document.createElement('div');
        edit_div.innerHTML = editContent;
        alert(edit_div.innerHTML);
        edit_div.class = editIframeObj.class;
        parent.removeChild(editIframeObj);
        parent.appendChild(edit_div);
        */
        
        //替换历史环节
        /*var iframeObj = document.getElementById("processHistory"); 
        var iframeContent = iframeObj.contentWindow.document.body.innerHTML; 
        // 不可以直接修改,只能是添加一个删除一个
        //var p = document.getElementById('detail');
        var parent = iframeObj.parentNode;
        var div = document.createElement('div');
        div.innerHTML = iframeContent;
        div.id = iframeObj.id;
        parent.removeChild(iframeObj);
        parent.appendChild(div);*/
        
        //更改附件href
        var attachments = document.getElementsByClassName("text-green");
        for(var i=0;i             var name = attachments[i].innerHTML;
            attachments[i].setAttribute('href',"./css/"+name);
        }
        
        //获取input框的内容
        var inputFrames = document.getElementsByClassName("singleInput");
        for(var i=0; i             var inputFrame = $(inputFrames[i]);
            var fieldValue = inputFrame.val();
            //alert(fieldValue);
            inputFrame.attr('value', fieldValue);
        }

var html = $("html").html();
        html = $('

'+html+'
');
        var cssLinks = html.find('link');
        for(var i=0; i             var cssLink = $(cssLinks[i]);
            var cssHref = cssLink.attr("href");
            if(cssHref.indexOf("?") != -1){
                cssHref = cssHref.split('?')[0];
            }
            cssHref = cssHref.substring(cssHref.lastIndexOf("/")+1);
            cssLink.attr("href", "./css/"+cssHref);
        }
        //替换历史环节
        var iframeObj = html.find("#processHistory")
        var iframeContent =$("#processHistory").contents().find('body').html();
        var reiframe = $("
"+iframeContent+"
");
        html.find("#processHistory").before(reiframe);
        html.find("#processHistory").remove();
        
        //替换富文本编辑框
        /*var editContent = CKEDITOR.instances.applydescript.getData();
        var reditor = $("
"+editContent+"
");
        html.find("#applydescript").before(reditor);
        html.find("#applydescript").remove();*/
        var editor = $(html.find(".cke_wysiwyg_frame")[0]);
        editor.attr("src", "./css/applydescript.html");
        
        return html.html();
    }
}
/*
 * 生成随机guid
 */
function S4() { 
       return (((1+Math.random())*0x10000)|0).toString(16).substring(1); 
    }; 
// Generate a pseudo-GUID by concatenating random hexadecimal. 
function guid() { 
   return (S4()+S4()+"-"+S4()+"-"+S4()+"-"+S4()+"-"+S4()+S4()+S4()); 
}; 
 

 

你可能感兴趣的:(前台代码,将当前页面的html内容另存为html从后台到本地功能)