javascript - 无法获取命名空间元素

标签 javascript xml-namespaces domparser

我有一个带有命名空间 XML 文档的字符串:

  <?xml version="1.0" encoding="UTF-8"?>
  <feed xmlns="http://www.w3.org/2005/Atom" xmlns:zapi="http://zotero.org/ns/api">
    <entry>
      <zapi:year>2014</zapi:year>
    </entry>
  </feed>

我使用 javascript DOM 解析器解析它(其中 zXml 是上面的字符串):

var dp = new DOMParser();
var zDom = dp.parseFromString(zXml, "text/html");
var entry = zDom.querySelector("entry");

然后我想要年份,所以我尝试:

entry.getElementsByTagNameNS("http://zotero.org/ns/api", "year")

不幸的是,这给了我一个空列表,[]

我应该做什么?

最佳答案

啊,找到了。只需使用

var zDom = dp.parseFromString(zXml, "text/xml");

关于javascript - 无法获取命名空间元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26171426/

相关文章:

javascript - 如何阻止 javascript 重定向页面?

javascript - Li 元素在单击时不会保持选中状态

javascript - 具有异步功能的有状态 React 组件未通过 Jest 测试

java - 如何从 java 中的 DOM 解析器读取特定的 XML 标签<示例提到>

javascript - 通过 DOM 获取页面的内容类型

php - 如何获取<yt:accesscontrol>的xml属性?

python - xpath - 选择父级,其中子级具有带有命名空间字典的特定属性值

Java+DOM : How do I convert a DOM tree without namespaces to a namespace-aware DOM tree?

java - 如何使用 DOM 解析器按 XML 中的名称访问子节点?

java - 解析 XML 并将数据设置到 Model 类