3

私はjQueryのUIソート可能ファイルを使用しており、この形式でdivのシステムを作成しました。

<div class='mainDiv'>
    <label>text: <input type='text' name='textbox' /></label>

    <div class='children'>
        <div class='mainDiv'>...</div>
        <div class='mainDiv'>...</div>
        <div class='mainDiv'>
            <label>text: <input type='text' name='textbox' /></label>
            <div class='children'>...</div>
        </div>
    </div>
</div>

divには無限の数の子を含めることができ、親ボックス内のすべての.mainDivをドラッグアンドドロップできるようにしたいので、これを使用しました。

$(".mainDiv").parent().sortable({items: ".mainDiv", containment: "parent"});

ただし、これにより、要素を子または兄弟の.childrendivにドラッグできます。私は起こりたくない。要素を親の中にとどまるように制限したいと思います。

ここでの助けは熱くなります。

乾杯

4

1 に答える 1

4

私はこのようにそれを解決することができました:

$(this).parent().sortable({
    items: '> li',
    axis: 'y',
    ...
});

あなたの場合、それは以下で動作するはずです:

items: '> .mainDiv'

包含: 「親」は必須ではありません。

私の場合、以前のクリックイベントで「ソート可能」を有効にしています。これは高速であるためです。「mousedown」イベントにバインドすると簡単だと思います。ツリーを動的に作成する場合 (Ajax など) は、「livequery」を使用することをお勧めします。

于 2009-11-24T03:36:14.010 に答える