我的网络应用程序中有一些JavaScript:
<script>
document.getElementById("revDel").onclick = function() {myFunction()};
function myFunction() {
if (confirm("Confirm delete!")) {
}
else {
event.preventDefault();
}
}
</script>
它适用于Chrome&amp; IE浏览器;当用户尝试删除特定记录时,会弹出一个提示,如果他们选择&#34; OK&#34;记录被删除但如果他们点击&#34;取消&#34;删除操作已暂停。
不幸的是,这不适用于Firefox;当用户点击删除时,无论他们点击什么选项,记录都会被删除。
以前有没有人遇到过这个问题,你是怎么解决这个问题的?
答案 0 :(得分:2)
此处的问题是您没有将事件参数传递给回调函数。
当您的.onclick
事件触发时,它会创建一个事件对象,然后可以选择将其传递给您的回调函数,如下所示:
document.getElementById("revDel").onclick = function(e) {myFunction(e)};
function myFunction(e) {
if (confirm("Confirm delete!")) {...}
else {
e.preventDefault();
}
}
其中e
是事件对象,因此包含preventDefault()
方法。
您需要做的就是将事件对象作为参数传递给回调函数。
答案 1 :(得分:-1)
尝试return false
而不是event.preventDefault();
。