我有一個排序的頁面加載啓動並工作正常:啓動新的jQuery UI排序Ajax的負載
var regions = $('.region'),
options = $.extend({}, CvEditor.defaultDragOptions, {
connectWith: '.region',
stop: stopHandler,
});
regions.sortable(options).disableSelection();
然後我有一個需要重新加載頁面時,一些事情發生的頁面,而不是做整頁刷新,我通過Ajax重新加載頁面,並用Ajax響應中的可排序元素替換DOM的可排序元素。
在這一點上,我重新開始的排序完全相同的代碼:發生在這個階段
var regions = $('.region'),
options = $.extend({}, CvEditor.defaultDragOptions, {
connectWith: '.region',
stop: stopHandler,
});
regions.sortable(options).disableSelection();
沒有錯誤,但我不再能拖我的排序,所以會出現啓動失敗。
任何建議爲什麼?清楚的是,我並沒有通過Ajax添加可排序的元素,我正在替換DOM中的整個可排序容器。
你打阿賈克斯重裝後的.sortable()函數? – ggzone
我想你可能需要發佈一些更多的代碼,以便我們可以看到執行順序。從理論上講,你所說的一切都會檢查出來,它應該是有效的。 – Swires
@Swires我在這裏放了一些簡化代碼:http://jsfiddle.net/AYW2n/3/它顯示了精簡的應用程序代碼。拖放時,整個可排序元素在DOM中被替換爲另一個元素並重新啓動。然而,新的可排序元素在第二個init運行後實際上不可排序。 –