Javascript Alertify等待确认,然后转到另一页
我是alertify.js的新手。我想做的是,当用户点击链接时,浏览器应该显示确认框。如果用户单击,则转到下一页。如果用户单击“取消”,则停留在同一页面上。是否可以使用alertify.js执行此操作 这是我的HTML代码Javascript Alertify等待确认,然后转到另一页,javascript,jquery,dom,alertify,Javascript,Jquery,Dom,Alertify,我是alertify.js的新手。我想做的是,当用户点击链接时,浏览器应该显示确认框。如果用户单击,则转到下一页。如果用户单击“取消”,则停留在同一页面上。是否可以使用alertify.js执行此操作 这是我的HTML代码 <a href="index.php" class="alert">Logout</a> 但问题是,每当我点击链接时,我都会在点击确认之前进入index.php页面 $(".alert").on('click', function(){ e.
<a href="index.php" class="alert">Logout</a>
但问题是,每当我点击链接时,我都会在点击确认之前进入index.php页面
$(".alert").on('click', function(){
e.preventDefault();
alertify.confirm("Are you sure?", function (e) {
if (e) {
//window.location...redirect
} else {
//do something
}
});
});
您不需要返回true或false…您已经在if语句中检查了它问题是不可能让代码等待。因此,您需要做的是取消原来的单击,然后调用代码导航到新页面
$(".alert").on('click', function(e){
e.preventDefault();
var href = this.href;
alertify.confirm("Are you sure?", function (e) {
if (e) {
window.location.href = href;
}
});
});
这是正确的方法,但您需要对事件调用
preventDefault()
,以阻止其正常行为,并让.confirm()
的回调处理如何防止内部回调上的默认行为…为单击回调执行此操作
$(".alert").on('click', function(e){
e.preventDefault();
var href = this.href;
alertify.confirm("Are you sure?", function (e) {
if (e) {
window.location.href = href;
}
});
});