[英]JavaScript triggered by html5sortable's sortupdate is being run twice
<ul id="sortableQueue" class="sortable">
<li style="cursor: move" data-shotid="1">Shot Name - 1</li>
<li style="cursor: move" data-shotid="2">Shot Name - 2</li>
<li style="cursor: move" data-shotid="3">Shot Name - 3</li>
</ul>
然后在頁面底部,我有代碼為可排序列表加載js,並設置了一個名為“ sortupdate”的函數,該函數在列表順序每次更改時運行。
<script src="js/html.sortable.js"></script>
<script>
$('.sortable').sortable().bind('sortupdate', function (e, ui) {
alert(ui.oldindex + ' -> ' + ui.item.index());
});
</script>
事情變得奇怪了。 將一個項目從一個地方移動到另一個地方(例如,將項目1移到項目2的位置)時,警報將按預期工作,並返回“ 0-> 1”,但另一個警報框將顯示為完全相同的“ 0-> 1”。 在我看來,Java出於某種原因運行了兩次,但是我之前從未見過這樣的事情,也不知道是什么原因引起的。
我只需要運行一次,否則當我嘗試存儲新訂單時會發生非常奇怪的事情。
有人以前見過類似的問題,並且有什么建議嗎? 我不知道這是JavaScript問題,ASP.NET問題還是html5sortable問題,所以我什至不知道從哪里開始。
我本人只是遇到了這種情況,我認為這是警報的產物。 嘗試刪除警報,然后用console.log調用代替,並在瀏覽器檢查器的“控制台”選項卡中查看日志消息。
只需確保在釋放時刪除console.log調用即可。IE不會喜歡它,除非實際上有一個控制台。 如果您嘗試將頁面加載到常規IE中時頁面失敗,那么您就會知道這是問題,但是當您打開控制台時,頁面成功了,因此您無法找出問題所在:-(
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.