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

Jquery 提交表单时$.get出现问题,jquery,get,validation,Jquery,Get,Validation,我正在尝试验证用户填写表单后,帐户名是否尚未使用。代码如下所示: $("#add_account").submit( function () { $.get( "'.url::site("ajax/check_account_name").'", {account_name: "t"}, function(data){ alert( data )

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

    $("#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给了我一个空白的回答


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

Javascript处理程序在您单击的默认操作之前启动。因此,如果将此$.get语句附加到表单的“提交”按钮,则$.get语句将在通过浏览器方法提交表单之前激发


要取消此操作,应包括
returnfalse在单击处理程序的末尾取消默认操作,如J-P所示。这也适用于链接

正如J-p所说,
在提交处理程序的末尾返回false
@J-P,你应该把它作为一个回答:)第一个街区会发生什么?Try.submit(函数(e){e.preventDefault();//代码的其余部分})@J-P完美。这就解决了问题。为什么它需要返回false;尽管如此?我在Javascript/jQuery中只呆了大约一个月……我的内心是一名PHP开发人员。只是想学点诀窍,我还是有点问题。。。基本上,我有一个if-else处理返回的$get数据。我需要if返回false,else返回true。但是,除非我将整个.submit()返回false,否则它将不起作用。有什么办法可以做到这一点吗?谢谢你和J-P。我很感谢你的解释。这是有道理的。