我有以下XML:
<Openings width="20" height="10" layers="1">
<opening>
<item>
<x>1.5</x>
<y>2.25</y>
<width>3.5</width>
<height>5.5</height>
<type>rectangle</type>
</item>
</opening>
</Openings>
我有以下javascript代码:
$(openings).each(function(j, opening_el)
{
console.log("layers: " + $(opening_el).attr("layers")); //This is not working
});
我希望打印出&#34;图层:1&#34 ;;
答案 0 :(得分:1)
答案 1 :(得分:0)
首先,你有一个错误的选择器,用于定位标签打开的dom。它应该是$('Openings')
。您还需要使用$(this)
来访问.each()
循环中的当前dom。
试试这个:
$('Openings').each(function(){
console.log("layers: " + $(this).prop("layers"));
});
答案 2 :(得分:0)
在openings
标记上调用jQuery时缺少引号,并使用this
来获取循环中当前的html元素实例。
$('Openings').each(function(j, opening_el)
{
console.log("layers: " + $(this).attr("layers"));
});
工作demo
答案 3 :(得分:0)
是的,正如你所说,你错过了报价。这个版本应该可以正常工作。
$('openings').each(function(j, opening_el)
{
console.log("layers: " + $(opening_el).attr("layers")); //This is working
});