我将新的表单元素添加到可排序列表中。当列表重新排列时,我希望 ID 是连续的。到目前为止的代码:
$( "#sortable" ).sortable();
$( "#sortable" ).disableSelection();
var counter = 1;
$('a').click(function () {
var elems = '<li>'
'<input name="q_' + counter + '" type="text"/>' +
'<select name="type_' + counter + '" >
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>' +
'</li>' ;
$('#sortable').append(elems);
counter++;
return false;
});
这会生成一个包含连续 ID 的列表,重新排列时会不同步。如何使用 jquery 迭代列表并重新分配元素 ID?
最佳答案
将函数放入更新
回调中
$( "#sortable" ).sortable({
update: function(event, ui) {
$('select').each(function(index){
$(this).attr('id', index + 1);
});
}
});
关于jquery sortable - 在更改时重新分配连续元素 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16419348/