2009-05-07 17 views
3

私はjQueryのUIソート可能物を扱っており、この形式のdivシステムを作成しました。jQuery UI Sortable - 子要素への転送を許可しない

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

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

ここのヘルプは熱くなります。 、それはで動作するはずですあなたの場合

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

乾杯

答えて

4

私はこのようにそれを解決するために管理

items: '> .mainDiv' 

コンテ: "親"が必要とされていません。

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

+0

6ヶ月後にありがとうございました。私は最終的にこれを修正することができます:)幸いにも、プロジェクトは重要ではありませんでした!どうもありがとう。 – Joel

+0

それはあなたにとってまだ役に立ってうれしいです。良い一日を。 – lepe

+0

@Joelは、主な質問の左にある矢印をクリックして答えを受け入れることを検討してください – methodin

関連する問題