我有以下xml文件
<gallery>
<album title="test" description="test" lgPath="/images/commphotos/">
<img src="1130975173.jpg" />
<img src="1475634985E.jpg" />
<img src="1889677107.jpg" />
<img src="1356256436.jpg" />
<img src="834682273.jpg" />
</album>
</gallery>
我一直在尝试使用jquery读取它来获取每个img标记。 这是最好的方法吗?
答案 0 :(得分:2)
使用.map()
函数,您可以轻松地将这些src
的所有img
属性转换为Javascript数组。当然你也可以使用.each()
,但这种方式更优雅。
var srcArray = $(xml).find('img').map(function () {
return this.src;
}).get();
在我的示例中,.get()
用于从返回的jQuery对象创建一个简单数组。
答案 1 :(得分:1)
只需将XML文档视为任何其他文档:
$(xml).find('img');
更新:这将为您提供一个包含所有标签作为DOM元素的jQuery对象。如果你想要一个标签数组作为字符串,它会变得更复杂:
var tarr = [];
$(xml).find('img').each(function() {
tarr.push( $(this).clone().appendTo('<div/>').parent().html() );
});
仅获取src
属性:
var tarr = [];
$(xml).find('img').each(function() {
tarr.push( $(this).attr('src') );
});
答案 2 :(得分:-1)
$(XML).find( 'IMG')。ATTR( 'SRC')