如果在AJAX响应中声明

时间:2015-12-15 08:21:29

标签: php jquery ajax

这是我在1.php页面上的代码。

$(document).ready(function(){
    $('#click').click(function(){
        var data;
        data = "action=post";
        $.ajax({
            type: "POST",
            url: "2.php",
            data: data,
            dataType: "json",
            success: function (data) {
                console.log(data);
                if (data['id'] === 1) {
                    alert('Hi methos get');
                    $('#show').text('methos get');
                }
                if (data['id'] === 2) {
                    alert('Hi methos post');
                    $('#show').text('methos post');
                }
            }
        });
    });
});

我的HTML代码是这样的。

<button id="click">Click On Me.</button>
<p id="show"></p>

概念很简单:当我点击按钮时,警告框会显示一些值,<p>会显示一些值。

我的2.php页码:

if (isset($_POST['action'])) {
    if ($_POST['action'] == 'get') {
        $array = array("id" => '1', "config" => 'phppost',);
    }
    if ($_POST['action'] == 'post') {
        $array = array("id" => '2', "config" => 'phpget',);
    }
    Header('Content-Type: application/json');
    echo json_encode($array);
}

我现在才刚刚学习AJAX和jQuery,所以请帮助如何做到这一点。

2 个答案:

答案 0 :(得分:2)

亲爱的家伙们,数据['id']&amp; data.id工作的问题是('1')我没有给这个值的引号,现在它正在为所有人和@Nishan Senevirathna工作。我的最终代码是。

if (data['id'] === "1") {
     alert('Hi methos get');
     $('#show').text('methos get');
}
if (data['id'] === "2") {
    alert('Hi methos post');
    $('#show').text('methos post');
}

答案 1 :(得分:1)

由于您使用JSON作为dataType,因此您将在if内获取对象,您应该使用下面的内容

var obj = jQuery.parseJSON(data);
if (obj.id === 1) {
     // Your code goes here
} else if (obj.id === 2) {
     // Your code goes here
}

所以你最终的代码会变得像

$(document).ready(function(){
           $('#click').click(function(){
                    var data;
                    data = "action=post";
                    $.ajax({
                        type: "POST",
                        url: "2.php",
                        data: data,
                        dataType: "json",
                        success: function (data) {
                            console.log(data);
                            var obj = jQuery.parseJSON(data); 
                            if (obj.id === 1) {
                                alert('Hi methos get');
                                $('#show').text('methos get');
                            }
                            if (obj.id === 2) {
                                alert('Hi methos post');
                                $('#show').text('methos post');
                            }
                        }
                    });
                });
            });