最后,我成功地在本地创建了一个xml文件。使用JavaScript& amp; HTML 5中的BLOB(如下面的代码所示)。
此文件可以存储为文本或xml类型。 现在我的问题是如何使用JavaScript& amp;打开这个文件(再次从PC中的本地磁盘)。将特定节点的值加载到HTML表单中的相应字段。 ??
任何人都可以帮我这个吗?
//保存内容:
function savedata() {
var feederdocument = document.createElement("FeederDocument");
var feederreport = document.createElement("FeederReport");
if (document.getElementById("feederserialnumber").value == '') {
alert('Please Enter the Serial Number')
}
else {
var fileextns = '.xml';
if (fileextns == '.xml') {
var xmlString = '<?xml version="1.0" encoding="utf-8" ?>';
}
else {
var xmlString = '';
}
var orderdata = document.createElement("OrderData");
orderdata.appendChild(document.createElement("ClientName"));
orderdata.appendChild(document.createElement("ContactPerson"));
orderdata.appendChild(document.createElement("Country"));
orderdata.appendChild(document.createElement("Designation"));
orderdata.appendChild(document.createElement("Reference"));
orderdata.appendChild(document.createElement("Department"));
orderdata.appendChild(document.createElement("OrderNumber"));
orderdata.appendChild(document.createElement("PhoneNumber"));
orderdata.appendChild(document.createElement("SpecialistName"));
orderdata.appendChild(document.createElement("MobileNumber"));
orderdata.appendChild(document.createElement("Duration"));
orderdata.appendChild(document.createElement("Emailid"));
feederreport.appendChild(orderdata);
feederdocument.appendChild(feederreport);
//用于以xml格式下载内容;我正在使用如图所示的blob:
var res = xmlString.concat(feederdocument.innerHTML);
var textFileAsBlob = new Blob([res], { type: 'text/html' });
var fileNameToSaveAs = (document.getElementById("feederserialnumber").value).concat(fileextns);
var downloadLink = document.createElement("a");
downloadLink.download = fileNameToSaveAs;
downloadLink.innerHTML = "Download File";
if (window.webkitURL != null) {
downloadLink.href = window.webkitURL.createObjectURL(textFileAsBlob);
}
else {
downloadLink.href = window.URL.createObjectURL(textFileAsBlob);
downloadLink.onclick = destroyClickedElement;
downloadLink.style.display = "none";
document.body.appendChild(downloadLink);
}
downloadLink.click();
}
function destroyClickedElement(event) {
document.body.removeChild(event.target);
}