34
4

5 回答 5

84
<a class="confirm" href="/DoSomethingDangerous">do something dangerous</a>

查询:

$(function() {
    $('.confirm').click(function(e) {
        e.preventDefault();
        if (window.confirm("Are you sure?")) {
            location.href = this.href;
        }
    });
});

甚至更简单:

$(function() {
    $('.confirm').click(function() {
        return window.confirm("Are you sure?");
    });
});

本机确认框无法设置样式。如果你想要风格,那么你可以使用jQuery.UI.dialog

于 2012-09-21T13:22:17.793 回答
38

如果我们知道 DOM 函数在“是”和“否”上window.confirm()返回布尔值,我们的链接可以简化一点:truefalse

<a href="/DoSomething" onclick="return confirm('Are you sure?');">Link</a>
于 2014-09-01T11:47:45.313 回答
23

我认为最简单的解决方案是

<a href="/DoSomethingDangerous" onclick="if (!confirm('Are you sure?')) return false;">Link test</a>

于 2012-09-21T13:22:15.127 回答
15
$('a').click(function(e)
{
    if(confirm("Are you sure?"))
    {
        alert('navigate!');
    }
    else
    {
        e.preventDefault();
    }
});

演示:http: //jsfiddle.net/PDj9H/

于 2012-09-21T13:25:22.197 回答
2

我建议您使用 jQuery UImodal-confirmation对话框 - http://jqueryui.com/demos/dialog/#modal-confirmation

于 2012-09-21T13:20:24.427 回答