Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/435.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将元素从一个列表移动到另一个列表_Javascript_Jquery_List - Fatal编程技术网

Javascript 如何将元素从一个列表移动到另一个列表

Javascript 如何将元素从一个列表移动到另一个列表,javascript,jquery,list,Javascript,Jquery,List,我想将元素从一个列表A移动到另一个列表B。 问题是我想对列表A的元素进行排序,我使用的是list.js库,witch非常好 在这里,您可以看到一切是如何工作的: 问题是,如果我使用一个选项对列表A排序,我在列表B上移动的元素会返回到列表A。你可以从小提琴上看到它 这是我用来将元素从一个列表移动到另一个列表的代码: 有人能帮我吗 谢谢试试这个: $('.add').click(function () { var id = this.id; //$('#your-team').app

我想将元素从一个列表A移动到另一个列表B。 问题是我想对列表A的元素进行排序,我使用的是list.js库,witch非常好

在这里,您可以看到一切是如何工作的:

问题是,如果我使用一个选项对列表A排序,我在列表B上移动的元素会返回到列表A。你可以从小提琴上看到它

这是我用来将元素从一个列表移动到另一个列表的代码:

有人能帮我吗

谢谢

试试这个:

$('.add').click(function () {
    var id = this.id;
    //$('#your-team').append($("li#p-"+ id + "").html());
    $("li#p-"+ id + "").detach().appendTo('#your-team'); 

    //$("li#p-"+ id + "").remove();
    userList = new List('players', options);
    //userList = new List('players', options);
})

您的JSFIDLE不是很直观。如何测试?你在期待什么?也许现在好一点了@Melanciauk您想按什么对listA进行排序?list.js为您做了什么?也许我不应该使用detach函数将元素从一个列表移动到另一个列表,因为在列表B中比较的元素不需要“添加到列表B”按钮。@mcG73您可以使用搜索栏。按钮角色、名称值、团队和选择开关仅显示正确的团队只需全局声明变量userList。谢谢,但它不起作用。试着这样做:这样他们就不会返回到列表A,但他们总是从列表B中消失。等待一段时间,我会让你知道。你只为select工作是什么意思。另外,请确认这是否是您的html,或者这是否也被您的list.js修改过。如果你能发布你拥有的原始html,我可以帮助你。我从MySQL数据库获取元素。这是相似的,但不一样。这是我的HTML链接:css不见了,我想你无法访问该页面。我在一段时间前编辑了我的list.js,以限制许多元素的列表限制。仅适用于select,我的意思是它适用于筛选1队、2队或3队的球员!但不是用于排序按钮或搜索。抱歉,这是HTML:
$('.add').click(function () {
    var id = this.id;
    //$('#your-team').append($("li#p-"+ id + "").html());
    $("li#p-"+ id + "").detach().appendTo('#your-team'); 

    //$("li#p-"+ id + "").remove();
    userList = new List('players', options);
    //userList = new List('players', options);
})
var userList;
$(document).ready(function(){
//FUNCTION TO SORT THE LIST A. 
    var options = {
        valueNames: ['teame', 'role', 'name', 'value', 'team' ]
    };

    userList = new List('players', options);

    $('#teams').change(function () {
        var selection = this.value; 
        console.log (selection);
        if (selection == "tutte") {
            userList.filter();
            return false;
        }
        userList.filter(function(item) {

        if (item.values().team == selection) {
          return true;
        } else {
          return false;
        }
      });
      return false;
    });
    //THIS FUNCTION DETACHES THE ELEMENTS FROM LIST A AND IT APPENDS IT TO THE LIST B
    $('.add').click(function () {
        var id = this.id;
        //$('#your-team').append($("li#p-"+ id + "").html());
        $("li#p-"+ id + "").detach().appendTo('#your-team'); 
        //$("li#p-"+ id + "").remove();
        userList = new List('players', options);
        //userList = new List('players', options);
    }) 
});