2016-12-21 127 views
0

我已經得到了我要創建並用下面的代碼動態修改xmlDoc中:創建XML超鏈接下載鏈接動態

var fileReader = new FileReader(); 
var parser = new DOMParser(); 

fileReader.onloadend = function(){ 
     var xmlData = fileReader.result; 
     xmlDoc = parser.parseFromString(xmlData,"text/xml"); 
    }; 

後來我其輸出到一個textarea:

var textArea = document.getElementById("resultTextArea"); 
var xmlText = new XMLSerializer().serializeToString(xmlDoc); 
textArea.value = xmlText; 

但我想動態構建.xml文件並將其作爲超鏈接下載(右鍵單擊並另存爲)。這是可能的HTML和Javascript(認爲它可能不是由於安全影響)?

ps。我試圖避免外部庫(jQuery),但可以使用,如果它絕對是必需的

+0

https://github.com/eligrey/FileSaver.js – Endless

回答

0

您可以在JavaScript中創建一個File對象創建XML文件:

var file = new File([xmlText], "filename.xml", {type: "application/xml"}); 

提供這個文件的鏈接,您可以創建它Data URI。 假設,可變myButton將是一個<a>元件,所述代碼是這樣的:

var reader = new FileReader(); 

reader.addEventListener("load", function() { 
    myButton.href = reader.result; 
}, false); 

reader.readAsDataURL(file); 

參考文獻: