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對象。