javascript - 附加元素上的jquery sortable ui函数

标签 javascript jquery

我在一个列表组上使用 jquery 的可排序 ui,它工作得很好。我还有一个将元素添加到列表组的功能:

    $('#addTask').click(function(){
        var name = $("#taskName").val();
        var num = $('li[id=taskOrder]').length+1;
        $("#taskpriority").append('<li id="taskOrder" class="list-group-item list-group-item-dark d-flex justify-content-between align-items-center" draggable="true" style="display: block;">'+name+'<span class="badge badge-dark badge-pill">'+num+'</span></li>');

    });

但是一旦添加了新的列表组,它就不可拖动了。除添加的元素外,所有其他元素。

这是情况的 jsfiddle http://jsfiddle.net/yn8wxu9q/

最佳答案

您可以将 .sortable() 添加到 append() 函数的末尾(或紧跟其后)。像这样:

$('#addTask').click(function(){
    var name = $("#taskName").val();
    var num = $('li[id=taskOrder]').length+1;
    $("#taskpriority").append('<li id="taskOrder" class="list-group-item list-group-item-dark d-flex justify-content-between align-items-center" draggable="true" style="display: block;">'+name+'<span class="badge badge-dark badge-pill">'+num+'</span></li>').sortable();

});

这将使您添加的新元素可以使用 jquery 的可排序功能进行排序。

编辑/更新

您的“要点”问题是由于您在首次构建可排序元素列表时将元素声明为可排序时添加了 placeHolderClass 属性。

只需将 placeHolderClass 添加到我的代码中的可排序函数。像这样:

$('#addTask').click(function(){
    var name = $("#taskName").val();
    var num = $('li[id=taskOrder]').length+1;
    $("#taskpriority").append('<li id="taskOrder" class="list-group-item list-group-item-dark d-flex justify-content-between align-items-center" draggable="true" style="display: block;">'+name+'<span class="badge badge-dark badge-pill">'+num+'</span></li>').sortable({ placeholderClass: 'list-group-item' });

});

此添加将使它就像您已经开始一样,没有要点。

关于javascript - 附加元素上的jquery sortable ui函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52564928/

相关文章:

javascript - 加载克隆模式( Bootstrap )

javascript - 向下滚动时隐藏菜单,然后当向上滚动达到 0 时显示菜单 [javascript] 对我不起作用

javascript - 使用正确的语法创建 .each() 函数

javascript - 猫头鹰轮播视频没有响应地调整大小

javascript - 你能通过 PHP 判断 ajax 调用是来自页面还是来自控制台吗?

javascript - 有没有办法使用 jquery 和触发操作来检测 ios < > 表单导航按钮?

javascript - 如何使列表框中的选定项目滚动到顶部?

javascript - 如何使用jquery访问特定表单和特定类型的元素

javascript - 如何在 javascript 中更改字形文本

javascript - 模态通知出现在表单发送上,Foundation/Abide.js