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

时间:2014-09-26 18:27:36

标签: javascript jquery list

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

在这里你可以看到一切如何运作:

http://jsfiddle.net/Danny182/yzeupzrt/15/

问题在于,如果我使用选项对列表A进行排序,我在列表B上移动的元素会返回到列表A.
您可以从小提琴中看到它!

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

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

有人可以帮助我吗?

谢谢

2 个答案:

答案 0 :(得分:0)

试试这个:

$('.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);
})

答案 1 :(得分:0)

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);
    }) 
});