jquery sortable - 在更改时重新分配连续元素 ID

标签 jquery list

我将新的表单元素添加到可排序列表中。当列表重新排列时,我希望 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/

相关文章:

javascript - 使用 Jquery 将表单字段的值附加到表单操作?

jquery - $.each() 循环 + for 循环与 getJSON() 一起使用

list - 如何在 Cloudformation 中使用嵌套列表或附加到列表?

list - 测试 L 是否是有效的 Prolog 列表

javascript - jQuery 日期选择器。 2 个日期选择器。限制范围 : Max date of 2 weeks from the selected start date

asp.net - ASP.NET 中的 jQuery 验证

javascript - 无法在 JQuery Ajax 返回时刷新 reCaptcha

Python - 对第二个参数进行排序

list - 链表分区函数和反转结果

列表上的 Python boolean 运算 - 不一致的结果