Javascript 由html5sortable';s sortupdate正在运行两次
在aspx页面上,我有一个这样的可排序列表,它是使用Javascript 由html5sortable';s sortupdate正在运行两次,javascript,asp.net,html,html5-draggable,Javascript,Asp.net,Html,Html5 Draggable,在aspx页面上,我有一个这样的可排序列表,它是使用 快照名称-1 快照名称-2 快照名称-3 在页面底部,我有一些代码,用于加载可排序列表的js,并设置一个名为“sortupdate”的函数,该函数在列表顺序每次更改时运行 <script src="js/html.sortable.js"></script> <script> $('.sortable').sortable().bind('sortupdate', function (e, u
快照名称-1
快照名称-2
快照名称-3
在页面底部,我有一些代码,用于加载可排序列表的js,并设置一个名为“sortupdate”的函数,该函数在列表顺序每次更改时运行
<script src="js/html.sortable.js"></script>
<script>
$('.sortable').sortable().bind('sortupdate', function (e, ui) {
alert(ui.oldindex + ' -> ' + ui.item.index());
});
</script>
$('.sortable').sortable().bind('sortupdate',函数(e,ui){
警报(ui.oldindex+'->'+ui.item.index());
});
这就是事情变得奇怪的地方。在将项目从一个位置移动到另一个位置(如项目1到项目2的位置)时,警报会按预期工作,返回“0->1”,但随后会显示另一个警报框,显示完全相同的“0->1”。在我看来,Javascript由于某种原因运行了两次,但我以前从未见过类似的情况,也不知道是什么原因导致了它
我只需要它运行一次,否则在我尝试存储新订单时会发生非常奇怪的事情
有人以前见过类似的问题,有什么建议吗?我不知道这是JavaScript问题、ASP.NET问题还是HTML5可排序问题,所以我甚至不知道从哪里开始。我自己也遇到了这个问题,我认为这是警报的产物。请尝试删除警报,改为使用console.log调用,并在浏览器检查器的console选项卡中查看日志消息 请确保在释放时删除console.log调用。。。IE不喜欢它,除非有控制台。当您尝试在常规IE中加载页面时,如果页面失败,您就会知道这是问题所在,但当您打开控制台时,页面成功,因此您无法找到问题所在:-(
<script src="js/html.sortable.js"></script>
<script>
$('.sortable').sortable().bind('sortupdate', function (e, ui) {
alert(ui.oldindex + ' -> ' + ui.item.index());
});
</script>