有没有办法捕获警报ok按钮单击事件?

有没有办法捕获警报ok按钮单击事件? 在jQuery?

alert()函数是同步的,你无法validation被点击的内容(它不会返回任何内容),因此调用后的代码将在关闭后执行(ok或关闭按钮)。 警报不用于获取用户输入。 这是一个警报,向用户发送消息。 如果您需要检查用户想要的内容,则应使用confirm()。 请注意,函数名称告诉其目的,如alert。

就像是:

 // 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. } 

免责声明:这是一件非常糟糕的事情。

从技术上讲,您可以使用以下代码挂钩:

 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"); 

演示: http : //jsfiddle.net/W4d7J/1/

window.alert()没有事件。 基本上是在他们点击确定后调用它的下一行。 我不确定你为什么需要听它。

您可以使用JAlert并将单击处理程序分配给ok按钮。

就像是。

  jAlert("Alert message goes here."); $('#popup_ok').bind('click',function(){ //Do operation after clicking ok button. function_do_operation(); }); 

我在我创建的网站上试过这个并且它完美地运行了:

  << Back  

Alert是一个阻塞函数,意味着,如果你不关闭它,下面的代码将不会执行。 因此,您不必捕获警报关闭事件,只需记下该警报下面的代码,当警报窗口关闭时,下面的代码将自动执行。

见下面的例子:

 alert("Close Me"); // Write down the code here, which will executed only after the alert close