如何使用$ .post为javascript脚本传递变量?

时间:2011-09-23 23:46:04

标签: javascript jquery ajax

这是我的jquery / javascript中执行ajax请求的代码......

else {
        $.post("http://www.example.com", {email: val}, 
        function(response){
            finishAjax('email', response);
        });
    }
        joinAjax('cemail');
}
if (id == 'cemail') {

        $('#cemailMsg').hide();
    var email = $('#email').val();
        if (errors.email == false) {

                if (val != email) {

ajax请求正在运行,一切都很好,但下一个if语句的参数是:

if (errors.email == false) {

我需要能够将此变量从我的ajax.php文件设置为true或false并返回它,以便javascript可以读取它。这可能吗?? 这是因为ajax正在检查用户名是否可用,如果不可用则表单错误将导致表单提交失败,或者如果为false则用户可以提交。

我的ajax.php文件:

if ($_REQUEST['email']) {

$q = $dbc -> prepare("SELECT email FROM accounts WHERE email = ?");
$q -> execute(array($_REQUEST['email']));
if (!$q -> rowCount()) {

    echo '<div id="emailMsg" class="success">Email OK</div>';
    exit();
}
else {

    echo '<div id="emailMsg" class="error">Email taken</div>';
    exit();
}
}

2 个答案:

答案 0 :(得分:2)

为什么不让你的ajax.php像这样返回一个关联数组:

echo json_encode(array("email" => "success", "key2" => "val2"));

然后使用

var responseJSON = JSON.parse(response);

$.post回调函数中读取响应并采取相应措施。您可以生成适当的标记(div或其他)客户端并插入它。

答案 1 :(得分:0)