首页 文章

更改xpath查询查询的xml属性值?

提问于
浏览
0

我使用javascript xpath查询(document.evaluate(...))来读取和修改xml / svg / html文档的各个部分 .

设置查询元素和文本节点的nodeValue是没有问题的 . 但是在设置属性值时,确实已设置,但未在属性DOM节点上反映出来 .

看起来像属性节点的xpath查询返回(名称,值)对而不是属性节点 .

为什么会这样?

我怎么能绕过它呢?

2 回答

  • 0

    一些代码会有很大的帮助,你在做什么浏览器?我使用这个简单的HTML代码,并能够在FF 3.5中非常愉快地更改属性 .

    <html>
    <body>
    <img src="Jellyfish.jpg"/>
    <script>
        var node = document.evaluate("//img/@src", document, null, XPathResult.ANY_TYPE, null);
        var val = node.iterateNext();
        val.textContent = "Desert.jpg";
    </script>
    </body>
    </html>
    
  • 2
    xPath.compile("//EXPRESSION_TO_FIND_ATTRIBUTE");
    NodeList list = XPathExpression.evaluate(xmlDocument, XPathConstants.NODESET);
      for (int i = 0; i < list.getLength(); i++){
                    list.item(i).setTextContent("ATTRIBUTE_VALUE");
                }
    

相关问题