有人可以帮我通过 ajax 从这个 XML 文档中选择 ID = 2 的 URL。
<images><br/>
<image id=0><br/>
<url>images/pic.jpg</url><br/>
</image><br/>
<image id=1><br/>
<url>images/pic.jpg</url><br/>
</image><br/>
<image id=2><br/>
<url>images/pic.jpg</url><br/>
</image><br/>
</images>
我猜是这样的...但目前它正在显示 xml 中的所有条目。我只想加载一张图像,请问我该怎么做?
$.ajax({
type: "GET",
url: "images.xml",
dataType: "xml",
success: function(xml) {
$(xml).find('image').each(function(){
var id = $(this).attr('id'); //maybe something here?????
var url = $(this).find('url').text();
$('.loading').html('<img src='+url+' />');
});
}
});
最佳答案
您可以使用attribute-equals selector来做到这一点,像这样:
$.ajax({
type: "GET",
url: "images.xml",
dataType: "xml",
success: function(xml) {
var img = $(xml).find('image[id=2]'),
id = img.attr('id'),
url = img.find('url').text();
$('.loading').html('<img src="'+url+'" />');
}
});
这消除了您这边的代码,因为 jQuery 会找到您想要的元素,而您只处理该元素。
关于jquery - 通过 jquery 选择 xml 中的特定元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3364772/