2009-11-24 81 views
0

我使用javascript xpath查詢(document.evaluate(...))來讀取和修改部分xml/svg/html文檔。更改由xpath查詢查詢的xml屬性的值?

設置查詢元素和文本節點的nodeValue是沒有問題的。但是在設置屬性值時,它確實被設置了,但沒有反映在屬性DOM節點上。

它看起來像屬性節點的xpath查詢返回(名稱,值)對,而不是屬性節點。

這是爲什麼?

我該如何繞過它?

回答

2

有點代碼會幫助你很大,你在做什麼瀏覽器?我使用了這個簡單的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> 
0
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"); 
      } 
+0

你需要更充分地解釋你的答案。 – 2015-02-04 14:18:04