Jquery Connected Lists - обновлено значение сериализованного списка в полях ввода - PullRequest
0 голосов
/ 07 января 2012

Гайз, я пытаюсь решить проблему.

У меня есть два списка, которые можно сортировать с помощью connectWith в jQuery.Я пытаюсь сделать процесс, который обновляется каждый раз, когда элемент перемещается из одного списка в другой, который обновляет два скрытых поля ввода с сериализованным списком идентификаторов из каждого списка.

$(function() {
    $( "#sortable1, #sortable2" ).sortable({
        connectWith: ".connectedSortable"

    }).disableSelection();
});

Я хотел бы сделать это:

    var list = '';
    $('#sortable1 *').each(function() {
        list += $(this).attr('id') + ',';
    });
    alert('list = ' + list);

, но при каждом изменении он будет обновлять два поля ввода вместо того, чтобы делать оповещение со списком.

1 Ответ

1 голос
/ 08 января 2012

Вы должны быть в состоянии сделать что-то вроде:

$(function() {
    var lists = $( "#sortable1, #sortable2" ).sortable({
        connectWith: ".connectedSortable",
        update: function() {
            var list = [];
            lists.each(function(){
                $.merge( list, $(this).sortable("toArray"));
            });
            $("#out").text( list.join( "," ) );
        }
    }).disableSelection();
});

Рабочий пример: http://jsfiddle.net/petersendidit/eTwzF/

...