我在以下列表中使用jQuery UI - Sortable:
<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,第二个上的输入位置值,依此类推......
答案 0 :(得分: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中仍然存在旧值。 编辑:已经设法使其工作:)