Javascript Can';I don’我不能让这个AJAX用于我的表单

Javascript Can';I don’我不能让这个AJAX用于我的表单,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我有这张登记表: <div id="sign_up_field"> <form id="sign_up_form" action="sys/account/sign_up.php" name="sign_up" method="post"> <input class="account_form" type="text" name="name" placeholder="name (first and last name)" /

我有这张登记表:

<div id="sign_up_field">
        <form id="sign_up_form" action="sys/account/sign_up.php" name="sign_up" method="post">
            <input class="account_form" type="text" name="name" placeholder="name (first and last name)" />
            <input class="account_form" type="email" name="email" placeholder="email address" />
            <input class="account_form" type="password" name="password" placeholder="password" />
            <input class="account_form" type="text" name="username" placeholder="@username" />
            <input class="account_button" id="sign_up_button" type="submit" value="Sign up" />
        </form>
    </div>

以下是JS(JQuery):


/*
*AJAX注册
*/
$(“#注册按钮”)。单击(函数(){
$.post($(“#注册表格”).attr(“操作”),
$(“#注册表格:输入”).serializeArray(),
功能(信息){
$('body').empty();
$('body').html(信息);
});
$(“#注册表格”)。提交(函数(){
返回false;
});
});

我是AJAX新手,这是我在Youtube教程中的第一次尝试,但当我点击提交按钮时,我直接就可以注册了。PHP代码可以工作,但是JS似乎没有做它应该做的事情。我如何才能让它工作?

如果代码放在页面中表单的前面,它将找不到元素,因为它们还不存在。将代码包装在
ready()
中将解决此问题

此外,在单击按钮之前,提交处理程序最好绑定到表单。我个人会将ajax绑定到提交处理程序。然后,如果用户点击“回车”而不是点击按钮,它仍然会通过ajax

试试这个:

$(function(){ /* ready handler*/   
    $("#sign_up_form").submit( function() {
        /* do ajax here */
        return false;
    });    
});

添加e.preventDefault();致听众的开始;确保添加e作为传递给函数的参数,too@user3608176检查浏览器控制台是否存在错误<代码>不起作用信息量不大。发生了什么或没有发生什么?控制台只给出了两个错误,但这些错误都与我的AJAX代码无关。但是错误可能会阻止其他代码运行,甚至可能没有应用提交处理程序
$(function(){ /* ready handler*/   
    $("#sign_up_form").submit( function() {
        /* do ajax here */
        return false;
    });    
});