我正在尝试显示一个节点,例如“标题”在内部 html 页面上,但我需要它从保存在我的桌面上的 XML 文档中提取数据,但它似乎找不到 XML 文档。我不确定要添加什么或如何解决这个问题?任何帮助将非常感激!非常感谢
var parser, xmlDoc;
var text = loadXMLDoc("/Desktop/test.xml");
parser = new DOMParser();
xmlDoc = parser.parseFromString(text,"text/xml");
document.getElementById("demo").innerHTML =
xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue;
最佳答案
首先,由于安全原因,您无法从系统的绝对路径访问任何文件。您必须首先上传文件,然后才能处理 XML 内容。
按照下面的链接尝试为您创建小片段。
HTML:
<div>
<label id="txtFileInfo"></label>
<input id="xmlFile" type="file">
</div>
JS:
(function($){
$('#xmlFile').unbind('change')
.bind('change', function(e){
if(this.files.length > 0){
var file = this.files[0];
if(file.type == 'text/xml'){
setTimeout(function(){
console.log('Reader');
var reader = new FileReader();
reader.addEventListener('load', function(){
console.log(reader.result);
parser = new DOMParser();
xmlDoc = parser.parseFromString(reader.result, file.type);
console.log(xmlDoc);
});
reader.readAsDataURL(file);
}, 100);
}
// $('#txtFileInfo').text('Type: '+ file.type);
}
});
})($);
https://codepen.io/smtgohil/pen/gGWoRe
祝一切顺利。
关于javascript - 使用 JavaScript 提取 XML 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46467510/