2

並べ替え可能なリストがありますが、最初の項目を無効にして、入力フィールドを移動できないようにします。

リストは次のとおりです。

<ul id="sortable" class="connectedSortable">
    <input name="name1" class="inputfield" type="text" maxlength="30">
    <li>first sort item</li>
    <li>second sort item</li>
</ul>

そしてjs:

$("#sortable:not(:first-child)").sortable({
            connectWith : ".connectedSortable"
        });

:not(:first-child)でこれを解決しようとしましたが、機能していません...誰かがこれを行う方法を知っていますか?

ありがとう!

4

3 に答える 3

4

これはどう?

$( "#sortable" ).sortable({
    items: '> li'   
});

デモ

于 2012-11-07T18:28:30.083 に答える
3

入力がリストアイテムに適切にラップされるようにHTMLを修正する場合は、sortablesのアイテムオプションを使用してみることができます。

$("#sortable").sortable({
    items: "> li:gt(0)", 
    connectWith: ".connectedSortable"
});​

jsFiddleの例

于 2012-11-07T18:24:51.713 に答える
1

'sの<ul>内部にも含まれていないHTMLをaの中に含めることはできないため、HTMLは無効です。<li>

var _input = $("#sortable :first-child");

$('#sortable').before(_input); // move it outside of the UL
$('#sortable').sortable();

http://jsfiddle.net/nF7yW/

于 2012-11-07T18:28:42.103 に答える