1. 程式人生 > >前臺程式碼,將當前頁面的html內容另存為html從後臺到本地功能

前臺程式碼,將當前頁面的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 = "<html>"+updateLinks()+"</html>

//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<links.length;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<attachments.length;i++){             var name = attachments[i].innerHTML;             attachments[i].setAttribute('href',"./css/"+name);         }                  //獲取input框的內容         var inputFrames = document.getElementsByClassName("singleInput");         for(var i=0; i<inputFrames.length; i++){             var inputFrame = $(inputFrames[i]);             var fieldValue = inputFrame.val();             //alert(fieldValue);             inputFrame.attr('value', fieldValue);         }

var html = $("html").html();         html = $('<div>'+html+'</div>');         var cssLinks = html.find('link');         for(var i=0; i<cssLinks.length; 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 = $("<div>"+iframeContent+"</div>");         html.find("#processHistory").before(reiframe);         html.find("#processHistory").remove();                  //替換富文字編輯框         /*var editContent = CKEDITOR.instances.applydescript.getData();         var reditor = $("<div>"+editContent+"</div>");         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());  };