javascript确认对话框无法正常工作

时间:2009-12-30 10:02:45

标签: php javascript jquery

我一直试图让确认框工作,我正在使用php和jquery在点击删除链接时显示确认框,实际代码:

$(document).ready(function(){
    if (jQuery("a.delete-link").length > 0) {
        $("a.delete-link").bind("click", function(){
            return confirm("Sunteti sigur ca doriti sa stergeti?");
        });
    }
});

并调用链接:

<a href="javascript:void(0);" class="formSubmit delete-link" id="sterge">sterge</a>

该链接用于在点击时提交表单,其代码为:

$(document).ready(function(){
    if ($(".formSubmit").length > 0) {
        if ($(".formSubmit").parents("form").find("input:submit").length == 0) {
            $(".formSubmit").parents("form").append('<div style="width:1px;height:1px;overflow:hidden;"><input style="width:0;height:0;overflow:hidden;" type="submit" /></div>');
        }
        $(".formSubmit").click(function(){
            $(this).parents("form").trigger("submit");
            return false;
        });
    }
});

我确实收到了确认对话框,但是我选择了任何选项,表单提交并且调用了删除操作..任何想法我做错了什么?

3 个答案:

答案 0 :(得分:4)

将确认绑定到表单的onSubmit。你会以这种方式省去很多麻烦,无论表格如何被提交,你都会得到确认。

$( document ).ready ( function () {
    $( 'selector for your form' ).submit ( function () {
        return confirm ( 'Are you sure ...?' );
    } );
} );

答案 1 :(得分:1)

您有两个绑定到锚标记的点击事件。第一个事件显示确认,第二个事件提交表单。

仅在用户确认时触发表单提交:

$(document).ready(function(){
    if ($(".formSubmit").length > 0) {
        if ($(".formSubmit").parents("form").find("input:submit").length == 0) {
            $(".formSubmit").parents("form").append('<div style="width:1px;height:1px;overflow:hidden;"><input style="width:0;height:0;overflow:hidden;" type="submit" /></div>');
        }
        $(".formSubmit").click(function(){
            if ($(this).hasClass('delete-link') && confirm("Sunteti sigur ca doriti sa stergeti?"))
            {
                $(this).parents("form").trigger("submit");
            }
            return false;
        });
    }
});

答案 2 :(得分:0)

你能用这个:

<a href="#" onclick"return javascript:void(0);" ... />