javascript - jquery sortable 删除其他元素

标签 javascript jquery jquery-ui

我尝试在我们的项目上实现jquery可排序,如果排序完成,应该对项目重新索引,请参阅下面的代码:

 $("#data_field_table tbody").sortable({
            stop:updateRow
        }).disableSelection();

    var updateRow = function(e,ui){
        $('td.index',ui.item.parent()).each(function(i){
            var newIndex = i +1;
            $(this).html(newIndex);
        });

重新索引项目是可以的,但是在处理之后,排序行上的隐藏输入被删除,我不确定这是否是由jquery的可排序引起的,请参阅下面的代码:

<td class="index">${data.groupOrder}<input class="hiddenValue" type="hidden" name="fgDataFields[${info.index}].groupOrder" id="go${info.index}" value="${data.groupOrder}"/>
                    </td>

最佳答案

您的 updateRow 函数末尾缺少 }

尝试:

var updateRow = function(e,ui){
    $('td.index',ui.item.parent()).each(function(i){
        var newIndex = i +1;
        $(this).html(newIndex);
    })};

编辑:

重新阅读您的问题并意识到这不是问题所在。我现在知道重新索引正在工作,但隐藏的输入已被删除。

要解决这个问题,您必须保存输入并在重新索引后将 ID 重新添加到项目中。

类似这样的事情:

var updateRow = function(e,ui){
$('td.index',ui.item.parent()).each(function(i){
    var newIndex = i +1;

    var input = $(this).find('input');

    $(this).html(newIndex);
    $(this).append(input)
})};

关于javascript - jquery sortable 删除其他元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23100955/

相关文章:

jquery-ui - 链接的 jQuery 可排序列表和 Backbone 集合

javascript - 重新启用 javascript 对话框

jQuery AJAX 单文件上传

jQuery 对象,从父属性获取元素值?

javascript - jQuery .each()、.find() 和 .append() 仅适用于最后一个节点?

jQuery UI 版本和主题

javascript - Snap SVG 中的蒙版元素在翻译时不会出现在 View 中

javascript - 如果图像正常,为什么和img onerror处理程序一起执行

javascript - 获取 HTML5 video 标签的当前播放类型

jquery-ui - Jquery 选项卡 : spinner option not working