使用PHP JSON返回值在jQuery/JavaScript中做出决定

Using PHP JSON returned values to make decisions in jQuery/JavaScript

本文关键字:JavaScript 决定 jQuery PHP JSON 返回值 使用      更新时间:2023-09-26

一个朋友给了我下面这段代码:

json : { result: true }
success function(data){
    if(data.result) {
        //do something here
    }
    else {
        //do something here
    }
}

我如何将这些代码集成到下面的代码中:

$(function() {
    $("#action_button").click(function() {
        var username = $("#username").val();
        var password = $("#password").val();
        var dataString = '&username=' + username + '&password=' + password;
        if (username=='' || password=='') {
            $('.success').fadeOut(200).hide();
            $('.error').fadeOut(200).show();
        }
        else {
            $.ajax({
                type: "POST",
                url: "processing/logsig.php",
                data: dataString,
                success: function(){
                    $('.success').fadeIn(200).show();
                    $('.error').fadeOut(200).hide();
                }
            });
        }
        return false;
    });
}

我在PHP端返回JSON true或false值…一旦用户输入用户名和密码,如果用户已在数据库中注册,则登录用户。如果用户没有在数据库中注册,jQuery将为注册过程加载一个不同的表单。

success:function(data)是你的朋友给你的。您现有的success:function()没有数据参数。这(数据)是从服务器/PHP脚本返回的JSON。

"success"表示Ajax成功返回数据,但不表示登录是否成功(用户名和密码正确)。你应该显示你的成功登录,如果data.result == successful登录,或任何值你的PHP JSON包含。

对于代码帮助,我需要看到返回的JSON。

看起来这段代码应该放在ajax调用的'success'函数中。您还应该在success函数中包含新参数data。

success: function(data){
    $('.success').fadeIn(200).show();
    $('.error').fadeOut(200).hide();
    if(data.result) {
    //do something here
    } 
    else {
    //do something here
    }
}