1

我有一个基本的 javascript 确认对话框来确认用户是否要继续执行操作。如果用户只需单击“确定”或“取消”,对话框就会正常工作。但是,如果用户单击取消,然后重新触发对话框,然后单击确定,则不会提交表单。

我在下面包含了我的代码,当我在这里做什么时,有没有更好的方法来处理这个问题?

$("#myButton").click(function (event) {
    var result = confirm("Are you sure?");
    if (result) {
        return true;
    } else {
        return false;
    }
});

请注意,我也尝试event.preventDefault过代替return false并且看到相同的结果。

4

2 回答 2

2

如果您尝试确认表单提交,请尝试此操作

$("form").submit(function () {
    return confirm("Are you sure?");
});
于 2013-01-04T14:45:55.650 回答
2

现在我可能会得到你想要实现的目标。只需将事件绑定到您的表单提交处理程序,而不是单击按钮。如果用户使用他的键盘等发送表单,这也会触发。

<form id="wohoo" action="/somewhere">
    <input />
    <input type="submit" value="send me"/>
</form>​

$("#wohoo").submit(function () {
    var result = confirm("Are you sure?");

    return result;
});​

http://jsfiddle.net/2tSbJ/

于 2013-01-04T14:49:22.227 回答