6
A
回答
2
你必須找到首先列出元素,然後按其屬性進行過濾。
這裏看看我的演示:http://jsfiddle.net/silkster/eDP5V/
1
jquery可以很容易地做到這一點。 http://think2loud.com/224-reading-xml-with-jquery/
+0
我正在構建一個XML,jQuery與IE不能很好地工作。 – Wenn
1
我覺得這是JQuery的免費
document.getElementsByAttribute = function(attribute, value, tagName, parentElement) {
var children = ($(parentElement) || document.body).getElementsByTagName((tagName || '*'));
return $A(children).inject([], function(elements, child) {
var attributeValue = child.getAttribute(attribute);
if(attributeValue != null) {
if(!value || attributeValue == value) {
elements.push(child);
}
}
return elements;
});
}
已經向我指出,我貼錯了腳本這證明一個新的答案..嘿嘿閱讀here
// document.getElementsByAttribute([string attributeName],[string attributeValue],[boolean isCommaHyphenOrSpaceSeparatedList:false])
document.getElementsByAttribute=function(attrN,attrV,multi){
attrV=attrV.replace(/\|/g,'\\|').replace(/\[/g,'\\[').replace(/\(/g,'\\(').replace(/\+/g,'\\+').replace(/\./g,'\\.').replace(/\*/g,'\\*').replace(/\?/g,'\\?').replace(/\//g,'\\/');
var
multi=typeof multi!='undefined'?
multi:
false,
cIterate=document.getElementsByTagName('*'),
aResponse=[],
attr,
re=new RegExp(multi?'\\b'+attrV+'\\b':'^'+attrV+'$'),
i=0,
elm;
while((elm=cIterate.item(i++))){
attr=elm.getAttributeNode(attrN);
if(attr &&
attr.specified &&
re.test(attr.value)
)
aResponse.push(elm);
}
return aResponse;
}
1
它是很容易使用jQuery。假設我們有這樣的字符串。
<document>
<value type="people">
<name>
John
</name>
</value>
<value type="vehicle">
<name>
Ford
</name>
</value>
</document>
然後
var xmlDocument = $.parseXML(str);
$(xmlDocument).find("value[type='people'] name").text()
我們將得到字符串 '約翰' 回來。
相關問題
- 1. 有沒有辦法通過Tag屬性獲取XAML元素?
- 2. 有沒有辦法通過屬性來獲取元素?
- 3. 有沒有一種方法可以在元素方面「差別」兩個XML?
- 4. 有沒有一種方法可以通過id獲取ace編輯器?
- 5. 有沒有一種方法可以通過網絡訪問R?
- 6. XML架構 - 只有一個元素可以具有屬性
- 7. Android TabHost有沒有一種方法可以通過ID獲得TabView
- 8. 在.NET中有沒有一種方法可以通過現有的XML文件以編程方式生成DTD?
- 9. 可以通過第二種方法調用方法的屬性
- 10. Python HTML - 通過屬性獲取元素
- 11. 有沒有辦法通過索引獲取jQueryUI標籤元素?
- 12. 有沒有辦法通過使用httpwebrequest的ID獲取元素?
- 13. javax.servlet.jsp.JspException:沒有獲取屬性的方法
- 14. 是否有一種有效的方法來獲取HTML DOM元素屬性更改的通知?
- 15. 具有可變屬性的XML元素
- 16. 通過CSS屬性設置元素屬性,有可能嗎?
- 17. 有沒有一種方法可以讓Chrome瀏覽器的title =屬性工作?
- 18. 有沒有一種方法可以減少帶邊距的元素的高度?
- 19. 有沒有一種方法可以對元素執行外部風格?
- 20. 通過類屬性的部分匹配獲取所有元素
- 21. 有沒有一種很好的方法來獲取當前的屬性名稱?
- 22. 有沒有一種從GStreamer元素名稱獲取GType的簡單方法?
- 23. 在EF4中,有沒有一種方法可以讓未映射的屬性通過電線實現?
- 24. 有沒有一種方法可以通過屬性實現maven配置文件激活的反轉?
- 25. 有沒有一種方法可以通過X找到元素,然後返回Y?
- 26. 獲取給定XML元素的所有有效屬性
- 27. 有沒有一種方法可以讓ActionListener取消?
- 28. 有某種方法可以獲得某些UIImageView屬性嗎?
- 29. 當屬性無關時,通過XPath獲取XML元素
- 30. PHP:通過屬性獲取XML元素的值
不要這樣做。這很粗魯。在抓取它的屬性之前嘗試對該元素說話。說真的,你能詳細說明你的問題嗎?你嘗試了什麼,結果如何? –
我試圖得到一個使用javascript而不是jquery.find的元素(「node [id ='1']」) – Wenn
請不要以「Javascript:」爲前綴來標題。這就是標籤的用途。 –