我正在實現一個網站使用jquery-ui能夠排序列表。防止tomahawk命令鏈接被激活,同時使用jquery排序列表.sortable()
jQuery(".folder ul").sortable({
opacity: 0.6,
cursor: 'move',
update: sortUpdate,
distance: 15,
items: "> li:has(a)",
});
列表元素只能包含元素時纔可排序。到現在爲止還挺好。
由於可排序項目包含一個鏈接,所以當我放棄可排序項目時,鏈接被調用(我認爲是因爲它是作爲onclick事件處理的?)。 我試着創建一個新的onclick處理程序來處理自己的點擊事件,檢查用戶當前是否在拖動。但是這不起作用。
jQuery('.folder-used').click(function(event) {
event.stopPropagation();
event.preventDefault();
});
當我把一個斷點放到我自己的點擊處理程序中時,它表明點擊時到達了代碼。但是頁面無論如何都會重定向。我的猜測是,這是因爲我必須使用tomahawk commandlink。 Tomahawk生成自己的javascript函數來處理提交操作。
<t:commandLink action="#{dataHandler.filterChanged}">
<f:param name="id" value="#{val}" />
<img:generateTextImage height="182" width="50" value="#{val}" verticalAligned="true" xpos="54" ypos="29" />
</t:commandLink>
我該如何解決這個問題?有沒有人有一個想法,我可以如何處理tomahawk的onclick事件?
Thx提前! Zerd
P.s.我已經嘗試了不同的方式,如描述here(可排序的開始和停止事件)或here(禁用鏈接的點擊事件)