我正在使用以下代码来迭代下面给出的HTML元素
<ul id="sortable">
<li>
<p> item 1</p>
<ul id="nested-sortable">
<li>
Sub item 1
</li>
<li>
Sub item 2
</li>
<li>
Sub item 3
</li>
</ul>
</li>
<li>
<p> item 2</p>
</li>
</ul>
的Javascript
var jsonSeqObj = {};
alert('hi');
$('ul#sortable li').each(function(index,pele) {
alert($(pele).attr('id'));
$(pele).children('ul#nested-sortable li').each(function(idx, chele) {
alert(chele.attr('id'));
jsonSeqObj.push({REF_ID:$(chele).attr('id') , NEW_SEQ_NO:idx });
});
jsonSeqObj.push({REF_ID:$(pele).attr('id') , NEW_SEQ_NO:index });
});
li ul li is too long, line wraps but no indention
alert(jsonSeqObj);
return jsonSeqObj;
但孩子的事情不起作用
错误:对象不支持此属性。
答案 0 :(得分:1)
您的标记是否与示例中的相同?或者你有多个嵌套可排序的ul-s?可能是您在页面上有重复ID的问题(Id应该是唯一的)。
答案 1 :(得分:0)
alert(chele.attr('id'));
但这里的chele是DOM对象(不是jQuery),所以它没有attr方法。这就是为什么你得到'对象不支持这个属性......'