Is there a way to capture the alert ok button click event? In jQuery?
问问题
50694 次
6 回答
16
该alert()
函数是synchronous
并且您无法验证单击了什么(它不返回任何内容),因此调用下面的代码将在关闭后执行(确定或关闭按钮)。警报不用于获取用户输入。它是一个警报,是给用户的消息。如果您需要检查用户想要什么,您应该使用confirm()
. 请注意,函数名称告诉它的用途,如警报。
就像是:
// if the ok button is clicked, result will be true (boolean)
var result = confirm( "Do you want to do this?" );
if ( result ) {
// the user clicked ok
} else {
// the user clicked cancel or closed the confirm dialog.
}
于 2012-07-24T22:37:12.787 回答
10
Alert 是一个阻塞函数,意思是如果你不关闭它,下面的代码就不会执行。所以你不必捕获警报关闭事件,只需在警报下方写下代码,当警报窗口关闭时,下面的代码将自动执行。
请参见下面的示例:
alert("Close Me");
// Write down the code here, which will executed only after the alert close
console.log("This code is executed after alert")
于 2017-10-27T11:56:37.297 回答
9
免责声明:这是一件非常糟糕的事情。
从技术上讲,您可以使用以下代码挂钩:
window.alert = function(al, $){
return function(msg) {
al(msg);
$(window).trigger("okbuttonclicked");
};
}(window.alert, window.jQuery);
$(window).on("okbuttonclicked", function() {
console.log("you clicked ok");
});
alert("something");
</p>
演示:http: //jsfiddle.net/W4d7J/1/
于 2012-07-24T22:41:18.800 回答
2
window.alert() 没有事件。基本上,当他们单击确定时调用它之后的下一行。我不知道你为什么需要听它。
于 2012-07-24T22:36:53.857 回答
0
您可以使用JAlert并将单击处理程序分配给确定按钮。
就像是
jAlert("Alert message goes here.");
$('#popup_ok').bind('click',function(){
//Do operation after clicking ok button.
function_do_operation();
});
于 2013-05-29T09:24:06.157 回答
0
我在我创建的网站中尝试了这个,它运行良好:
<a href="javascript:var rslt=confirm('Cancel Appointment Creation');if(rslt){window.open('http://www.the_website_I_want_to_navigate_to.com')}else{}"> << Back </a>
于 2015-10-31T19:10:55.177 回答