如果表单有效,则更改jQuery post结果

时间:2013-11-29 21:23:10

标签: php jquery post

标题可能看起来有点令人困惑,但让我告诉你我想做什么。所以我在register.php上有一个注册表。表单数据由用户在keyup上的register.class.php文件处理,然后返回提交数据中的任何错误并放入“#return”div(在register.php中)。

“#return_error”回复得很好,我没有回答这个问题,但由于某些原因,即使没有错误,“#return_success”也不会回应。

我对jQuery很新,所以请原谅我。

以下是文件:

register.class.php

//this is just an excerpt from the file, the rest of the code in the file was just validation. 

$register = new Register();
$username = $_POST['username'];
$email1 = $_POST['email'];
$email2 = $_POST['reemail'];
$pass1 = $_POST['pass'];
$pass2 = $_POST['repass'];

$register->Username($username, $mysqli);
$register->Email($email1, $email2, $mysqli);
$register->Password($pass1, $pass2);

// no errors are found
if ($register->getStatus() === true) {

    echo "<div id=\"return_success\">";
    echo "<ul>";
    echo "<li><b>Everything is valid</b></li>";
    echo "</ul>";
    echo "</div>";
} else {
    //errors found
    echo "<div id=\"return_error\">";
    echo "<ul>";
    foreach ($register->errors as $error) {
        echo "<li><b>" . $error . "</b></li>";
    }
    echo "</ul>";
    echo "</div>";
}

的script.js

 $(document).ready(function() {
$("#return").hide();
$("#register input").keyup(function() {
    $.post("classes/register.class.php", $("#register").serialize(), function(data) {
        $("#return").html(data);
        $("#return").show();
        if (data === '') {
            $("#return").hide();
        }
    });        
});

});

0 个答案:

没有答案