1
假设我从AJAX调用中收到了一些XML。我知道如何在网页上使用选择器,例如如果我有<p id="foo"></p>
然后$("#foo")
会选择它,但是有没有办法让选择器来定位我的XML呢?所以如果我的XML包含<foo bar="baz"></foo>
,那么我可以用$("[bar='baz']")
来选择它。使用jQuery选择器遍历XMLDocument
假设我从AJAX调用中收到了一些XML。我知道如何在网页上使用选择器,例如如果我有<p id="foo"></p>
然后$("#foo")
会选择它,但是有没有办法让选择器来定位我的XML呢?所以如果我的XML包含<foo bar="baz"></foo>
,那么我可以用$("[bar='baz']")
来选择它。使用jQuery选择器遍历XMLDocument
是的,你可以;您只需将该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对象。