我试图在单击链接时停止默认操作。然后我要求确认,如果确认我想继续事件。我该怎么做呢?我可以停止事件,但无法开始。这是我到目前为止所拥有的:
$(document).ready(function(){
$(".del").click(function(event) {
event.preventDefault();
if (confirm('Are you sure to delete this?')) {
if (event.isDefaultPrevented()) {
//let the event fire. how?
}
}
});
});
最佳答案
无需阻止默认启动。只需这样做:
$(function() {
$(".del").click(function(evt) {
if (!confirm("Are you sure you want to delete this?")) {
evt.preventDefault();
}
});
});
在需要时阻止事件比阻止它然后取消阻止(如果可能的话)更容易和更合乎逻辑。
请记住,当向用户显示确认框时,代码将停止运行,直到用户选择“确定”或“取消”。
顺便看看JavaScript: event.preventDefault() vs return false .根据您是否要停止事件传播,您可能需要调用 stopPropagation()
或 return false
:
$(function() {
$(".del").click(function(evt) {
if (!confirm("Are you sure you want to delete this?")) {
return false;
}
});
});
关于javascript - 如何使用 JQuery 停止然后启动/触发事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2131011/