有没有办法捕获警报ok按钮点击事件?在jQuery?
答案 0 :(得分:11)
alert()函数是同步的,你无法验证被点击的内容(它不会返回任何内容),因此调用后的代码将在关闭后执行(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.
}
答案 1 :(得分:7)
免责声明:这是一件非常糟糕的事情。
从技术上讲,您可以使用以下代码挂钩:
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");
答案 2 :(得分:1)
window.alert()没有事件。基本上是在他们点击确定后调用它的下一行。我不确定你为什么需要听它。
答案 3 :(得分:0)
您可以使用JAlert并将单击处理程序分配给ok按钮。
喜欢的东西。
jAlert("Alert message goes here.");
$('#popup_ok').bind('click',function(){
//Do operation after clicking ok button.
function_do_operation();
});
答案 4 :(得分: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>
答案 5 :(得分:0)
警报是阻止功能,意味着,如果您不关闭它,则下面的代码将不会执行。 因此,您不必捕获警报关闭事件,只需记下该警报下面的代码,当警报窗口关闭时,下面的代码将自动执行。
见下面的例子:
alert("Close Me");
// Write down the code here, which will executed only after the alert close