不同窗格中的jquery可排序列表

时间:2011-08-31 17:00:49

标签: jquery layout jquery-ui-sortable panes

有谁知道如何让这个jquery sortable example在不同的窗格中工作? ...意味着每个可排序列表位于不同的窗格中。我无法拖过窗格。我正在使用ui layout作为我的窗格。

非常感谢!

3 个答案:

答案 0 :(得分:3)

得到它!哇,非常棘手。

我的js:

$(document).ready(function () {
$('body').layout({ applyDefaultStyles: true });

$("#sortable1").sortable({
    helper: function (e, ui) { return $(ui.get(0)).clone().appendTo('body').css('zIndex', 5).show();},
    connectWith: ".connectedSortable",
    receive: function (e, ui) { alert("sort 1 recieved an item... update Database.") }
}).disableSelection();

$("#sortable2").sortable({
    helper: function (e, ui) { return $(ui.get(0)).clone().appendTo('body').css('zIndex', 5).show(); },
    connectWith: ".connectedSortable",
    receive: function (e, ui) { alert("sort 2 recieved an item... update Database.") }
}).disableSelection();

$("#sortable3").sortable({
    helper: function (e, ui) { return $(ui.get(0)).clone().appendTo('body').css('zIndex', 5).show(); },
    connectWith: ".connectedSortable",
    receive: function (e, ui) { alert("sort 3 recieved an item... update Database.") }
}).disableSelection();

});

HTML:

    <BODY>
<DIV class="ui-layout-center">
    <div>
        <div class="casted-and-potential-content">
            <div class="casted-content content" style="">
                <div><b>Casted Talent for Role</b></div>
                <ul id="sortable1" class="connectedSortable">
                    <li class="ui-state-default11 bob">Item 1</li>
                    <li class="ui-state-default12">Item 2</li>
                    <li class="ui-state-default13">Item 3</li>
                    <li class="ui-state-default14">Item 4</li>
                    <li class="ui-state-default15">Item 5</li>
                </ul>
            </div>
            <div class="potential-content content" style="">
                <div><b>Potential Talent for Role</b></div>
                <ul id="sortable2" class="connectedSortable">ffff
                    <li class="ui-state-default21">Item 21</li>
                    <li class="ui-state-default22">Item 22</li>
                    <li class="ui-state-default23">Item 23</li>
                    <li class="ui-state-default25">Item 24</li>
                    <li class="ui-state-default26">Item 25</li>
                </ul>
            </div>
        </div>
    </div>
</DIV>
<DIV class="ui-layout-south" style="margin:0px !important;background:none repeat scroll 0 0 #E7E6E2 !important;">
    <div class="rejected-content" style="padding:10px 20px 10px 20px;background:none repeat scroll 0 0 #E7E6E2 !important;">
        <div><b>Rejected Talent for Role</b></div>
            <ul id="sortable3" class="connectedSortable">
                <li class="ui-state-default31">Item 31</li>
                <li class="ui-state-default32">Item 32</li>
                <li class="ui-state-default33">Item 33</li>
                <li class="ui-state-default34">Item 34</li>
                <li class="ui-state-default35">Item 35</li>
            </ul>
    </div>
</DIV>
</BODY>

需要更改项目的z-index和dom中的位置。

答案 1 :(得分:0)

我认为他们正常工作。

看这里:

http://jsfiddle.net/trmr9/

答案 2 :(得分:0)

对sortables使用connectWith选项将获得您想要的结果。

$('#firstList').sortable({connectWith : '#otherList'});

一个。

$('#otherList').sortable({connectWith : '#firstList'});

另一方面。

如果它们位于不同的DIV中,它就不会有所作为。