如果我有以下XML:
<Books>
<Book>
<Name>Test</Name>
...
</Book>
<Book>
<Name>Another one</Name>
...
</Book>
</Books>
如何使用jQuery的名称值等于“test”的子元素选择Book元素?
答案 0 :(得分:9)
var book = $xml.find( 'Name' ).filter(function () {
return $( this ).text() === 'Test';
}).parent();
其中$xml
是表示XML文档的jQuery对象。我假设您通过Ajax加载XML文档。在这种情况下,您可以构造这样的jQuery对象:
var $xml = $( data );
其中data
是Ajax响应。
答案 1 :(得分:4)
$('Books Book Name:contains("Test")')
http://api.jquery.com/contains-selector/
(这将匹配“测试”以及“数学测试”和“这只是一个测试”。)
答案 2 :(得分:4)
$("Books Book Name:Contains('Test')");
答案 3 :(得分:0)
To avoid selecting Name
element, use the .has()
filter function like so:
$('Books Book').has('Name:contains("Test")')
This will return the Book
items with the name of "Test".