从ajax调用PHP脚本获取JSON响应

时间:2011-11-25 06:29:04

标签: php jquery json

我已成功将json响应从ajax调用返回到发送消息的php脚本。在向PHP脚本提交数据时,如果成功,它应该返回一个json字符串,如下所示......

{"status":"valid","message":"Your message was send successfully."}

我想检查“状态”是否等于有效,然后显示一个显示消息已发送的div。我将如何做到这一点,这是我到目前为止的代码......

$("#send").click(function() {
        var complete = true;
        $('input#fullname, input#email, input#subject, textarea#message').each(function() {
            if ($(this).val()) {
                $(this).css("background","#121212").css("color","#5c5c5c");
            } else {
                $(this).css("background","#d02624").css("color","#121212");
                complete = false;
            }
        });
        if (complete == true){
            var name = $("input#fullname").val();
            var email = $("input#email").val();
            var subject = $("input#subject").val();
            var message = $("textarea#message").val();
            var data = 'name='+name+'&email='+email+'&subject='+subject+'&message='+message;
            $.ajax({
                type:"POST",  
                url:"resources/includes/contact.php",  
                data:data,
                success:function(data){
                    alert(data);
                }
            });
        }
    });

谢谢,
纳撒尼尔布莱克本

3 个答案:

答案 0 :(得分:1)

你可以这样做

$.ajax({
                type:"POST",  
                url:"resources/includes/contact.php",  
                data:data,
                dataType: 'json',
                success:function(response){
                   if(response.status="valid"){
                        ......
                  }

                }
            });

答案 1 :(得分:0)

将您的成功功能更改为:

success:function(data)
{
    jsonObject = JSON.parse(data);
    alert(jsonObject.status);
}

答案 2 :(得分:0)

在您的成功回调功能中,添加

data = $.parseJSON(data);
if (data.status == "valid"){
     //do stuff
}