2012-03-01 11 views
5

मैंने कई चीजों की कोशिश की लेकिन सफल नहीं :(मेरे पास एक दूसरे के साथ जुड़े दो क्रमबद्ध सूचियां हैं। बात यह है कि 'ए' इसमें कोई सूची आइटम स्वीकार कर सकता है। लेकिन 'बी' केवल एक आइटम class = 'एबीसी' होने को स्वीकार कर सकतेएक क्रमबद्ध सूची में अमान्य सॉर्ट करने योग्य आइटम को अस्वीकार करें

रूप

<ul id='A'> 
    <li>item A1</i> 
    <li>item A2</i> 
    <li class='abc'>item A3</i> 
</ul> 

<ul id='B'> 
    <li class='abc'>item A1</i> 
</ul> 

jQuery कोड मैं कोशिश कर रहा हूँ

$('#A').sortable({revert: true, connectWith: '#B'}) 
$('#B').sortable({revert: true, connectWith: '#A', over: function(event, ui){ 
    if(!ui.item.hasClass('abc')){ 
    ui.placeholder.addClass('ui-state-error'); 
    ui.sender.sortable('cancel'); 
    } 
}}) 

है कृपया मुझे मार्गदर्शन जहाँ मैं गलत हूँ कोड है, धन्यवाद

उत्तर

4

आप के बजाय घटना प्राप्त का उपयोग कर की कोशिश कर सकते हैं, हालांकि यह एक बिट यह और addClass does not काम कर रही है देरी:

$('#A').sortable({revert: true, connectWith: '#B'}) 
$('#B').sortable({revert: true, connectWith: '#A', 
    receive: function(event, ui){ 
     if(!ui.item.hasClass('abc')){ 
      $(ui.placeholder).addClass('ui-state-error');      
      $(ui.sender).sortable('cancel'); 
     }} 
})​;​ 

उदाहरण - http://jsfiddle.net/b5ykK/1/

+0

वाह! अद्भुत :) एक और बात, क्या हम वापसी संक्रमण को चिकनी बना सकते हैं? यह तुरंत वापस चला जाता है – makki

+0

@makki यह ऐसा नहीं लगता है। आप इसे एक और प्रश्न के रूप में पोस्ट कर सकते हैं और देख सकते हैं कि कोई जानता है कि कैसे। –

संबंधित मुद्दे