假设我从AJAX调用收到了一些XML。我知道如何在网页上使用选择器,例如如果我有<p id="foo"></p>
然后$("#foo")
会选择它,但有没有办法让该选择器来定位我的XML?因此,如果我的XML包含<foo bar="baz"></foo>
,那么我可以使用$("[bar='baz']")
选择它。
答案 0 :(得分:4)
是的,你可以;您只需将该XMLDocument传递给jQuery选择器(作为其context
参数)。事实上,你可以愉快地在那里传递一个字符串:
var xml = '<xml><foo id="foo">bar</foo><foo id="nonfoo">baz</foo></xml>',
xmlDoc = $.parseXML(xml);
console.log( $('#foo', xmlDoc).text() ); // bar
console.log( $('#foo', xml) .text() ); // bar
请注意,(显然)使用它是一个非常奇怪的想法:
$('#foo', xml).text();
$('#nonfoo', xml).text();
...
...因为jQuery每次都必须将xml字符串重新解析为XMLDocument对象。