前臺程式碼,將當前頁面的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()); };