2010-03-09 28 views
5

Çalıştığım sıralı bir listeyim var, jQuery ile başka bir betik tarafından eklenmiş ve kaldırılmış elemanlar olabilir ve garip bir problemim var. Yeni oluşturulan bu öğeler sürüklenebilir gibi görünüyor, ancak sayfa yüklemesinde zaten var olmadıkça aslında sıralamıyorlar. Sortable ('refresh') kullanarak denedim, ancak hiçbir etkisi yok gibi görünüyor.jquery ui sortable ('yenileme') çalışmıyor!

+0

Bu sorunu da yaşıyorum. Bir sınıf seçicisinde yenilemenin çalıştırılması, DOM'de 'ui-sortable' sınıfını eklemez. Bunu hiç çözdün mü? – dmrnj

+0

Hatırlamıyorum. Sanırım bitirip başka bir şey yapmaktan vazgeçtim. –

cevap

2

Size bu soruyu kapatma fırsatı vermek için, ve sadece bunun için başkalarının tökezlemesi durumunda referans uğruna, bu en son jquery-ui'de iyi çalışıyor gibi görünüyor. İşte bir jsfiddle: http://jsfiddle.net/fordlover49/mVrGA/

+0

Tam olarak bir "çözüm" değil, ancak sorun artık mevcut değil. Bu bilgi de olsa denktir. –

+0

Bu bir çözüm süreci değil. Örneğinizde, tüm öğelerin zaten sıralanabilir olarak başlatıldığı iki liste var. Bu soru, zaten başlatılmış bir listeye eklenen öğeler hakkında sorular soruyor. – Mario

+0

Hepsi, sıralanabilir olarak başlatılmamışlardı. İlklendirildikten sonra, sıralanmamış listeye ek öğeler eklediğini unutmayın. Bunu kanıtlamak için, "eklenen" liste öğelerini ekleyen kodun etrafında bir setTimeout yapın ve listenin yeni öğeler olmadan sıralanabileceğini göreceksiniz ve zaman aşımı tetiklendikten sonra yeni öğeler otomatik olarak sıralanabilir. Orijinal yanıtımda da belirtildiği gibi düzeltmedim, sadece jQuery-ui ekibinin sorunu en son sürümde çözdüğünü gözlemledim. – PriorityMark

2

Benzer bir sorunla karşılaştım. Sıralı listeye yeni bir öğe ekledikten sonra artık hiçbir şey sürüklenemedi.

$(".selector").sortable("destroy"); 

ilk ve daha sonra tekrar sıralanabilir olun: Benim çözümüm destroy yöntemi çağırmak için oldu.