如何解决使用React js进行Xml阅读
我正在尝试获取带有标签“ data_model”的元素。问题是,当我编写getElementbyTagName(“ data_model”)时,它将在控制台中返回一个空数组,但是当我尝试获取具有标签名称“属性”,它将返回具有预期结果的数组。您能帮忙弄清楚如何解决此问题吗? 这是我的xml文件:
<?xml version="1.0" encoding="UTF-8"?> <data_set type="Workbook">
<attribute name="name"> <value>PL_DB</value></attribute> <data_model type="WorkbookTabs"><attribute name="name"><value>Worksheets</value>
</attribute><data_model type="java.lang.Object"><attribute name="name"><value>DS01</value>
</attribute>
<attribute name="label">
<value>Boprem</value>
</attribute>
</data_model> </data_model></data_set>
这是我的React函数,用于读取xml文件
handleSubmit(event) {
event.preventDefault()
const file = this.XmlReader.files[0];
const reader = new FileReader();
reader.readAsText(file);
reader.onloadend = evt => {
const readerData = evt.target.result;
const parser = new DomParser();
const xmlDoc = parser.parseFromString(readerData,"text/xml");
console.log(xmlDoc.getElementsByTagName("attribute"))
}
当我尝试获取标记名称为“ attribute”的元素时的结果
(4) [Node,Node,Node]
0:节点 命名空间:null 文字:未定义 _selfCloseTag:否 属性:[{…}] childNodes:(3)[节点,节点,节点] 第一个孩子: (...) innerHTML:(...) 最后一个孩子: (...) nodeName:“属性” nodeType:1 externalHTML:(...) parentNode:null textContent:(...) 得到firstChild:ƒ() 获取innerHTML:ƒ() 得到lastChild:ƒ() 获取outerHTML:ƒ() 获取textContent:ƒ() proto :对象 1:节点{名称空间:null,文本:undefined,_selfCloseTag:false,nodeType:1,nodeName:“ attribute”,…} 2:节点{名称空间:null,文本:undefined,_selfCloseTag:false,nodeType:1,nodeName:“ attribute”,…} 3:节点{名称空间:null,文本:未定义,_selfCloseTag:false,nodeType:1,nodeName:“ attribute”,…} 长度:4 proto :数组(0)
这是当我尝试获取标记名称为“ data_model”的要素时的结果:
[]
长度:0 proto :数组(0)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。