提交表单时出现$ .get问题

时间:2010-05-05 14:43:54

标签: jquery get validation

我正在尝试验证用户填写表单后是否尚未使用帐户名称。代码如下:

    $("#add_account").submit( function () { 
            $.get(
                "'.url::site("ajax/check_account_name").'", 
            {account_name: "t"}, 
            function(data){ 
                alert( data ); 
            }); 
        });

如果语句如下所示,我得到$ .get响应:

    $(document).ready( function () { 
            $.get(
                "'.url::site("ajax/check_account_name").'", 
            {account_name: "t"}, 
            function(data){ 
                alert( data ); 
            }); 
        });

这让我相信我的$ .get语句是正确的。是否有一些我不熟悉的jQuery规则会导致提交方案失败?

在代码块1中,我得到了应该返回的值。第2块给我一个空白的回复。

有什么想法吗?谢谢你的时间,我知道你有更好的事情要做。

1 个答案:

答案 0 :(得分:1)

Javascript处理程序在您单击的任何内容的默认操作之前触发。因此,如果您将这个$ .get语句附加到表单的提交按钮,那么$ .get语句将在通过浏览器方法提交表单之前触发。

要取消此操作,您应该在点击处理程序的末尾添加return false;以取消默认操作,如J-P所示。这也适用于链接。