jquery ui - 可排序:获取所有元素的新位置

jquery ui - sortable: get new position of all elements

我正在使用 jQuery UI - 可按以下列表排序:

<div class="contentEntries">
<div class="contentEntry">...</div>
<div class="contentEntry">...</div>
<div class="contentEntry">...</div>
<div class="contentEntry">...</div>
</div>

在 .contentEntry 中有一个输入字段,其位置为:

<input type="text" class="form-control" placeholder="Position" name="row[contents][23][position]" value="0">

我希望如果我将一个元素拖动到一个新位置,我将获得所有元素的新位置列表。

例如: 在每个 .contentEntry 上,带有该位置的输入的值为 0。现在我将任何元素拖到一个新位置,我希望所有元素都获得正确的顺序作为值。这样第一个的输入位置值为1,第二个为2,依此类推...

哦,没那么难 ;)

$(function() {
    $('.contentEntries').sortable({
        stop: function(event, ui) {
            $(this).find('.contentEntry').each(function(i, el){
                $(this).find('input.position').val(i+1);
            });
        }
    });

    $('.contentEntries').disableSelection();
});

但是还有一个问题。正确的值显示在网站中,但在 DOM 中仍然是旧值。 编辑:已经让它工作了:)