将数据发送回AJAX函数

时间:2011-10-25 10:33:15

标签: jquery

我有一个简单的AJAX请求,它将数据发送到PHP,PHP会像往常一样将一些成功数据发送回AJAX。例如

var firstvalue = xxx;
var secondvalue = xxx2;

AJAX

$.post("some.php",{value1 : firstvalue, value2 : secondvalue}, function(data){
    if(data) {
        alert(data);
    } else {
        alert("An error occurred.");
    }
});

PHP( some.php

$id = S_GET['someid'];
$impdata = $_GET['somegettabledata']
$value1 = $_POST['value1'];
$value2 = $_POST['value2'];

if (value1 === value2) {
    /* 
    This is my problem I want to echo id and impdata 
    but I don't know how to pass both of them
    */
    echo "...";
} else {
    echo "Error.";
}

那么如何从PHP发回的数据中同时包含id和impdata?对不起,如果这是愚蠢的。

非常感谢

2 个答案:

答案 0 :(得分:2)

在PHP中:

echo json_encode( array(
    'id' => $id,
    'impdata' => $impdata
));

在javascript中,您需要解析json字符串:

function(data){
    var myData = JSON.parse(data);
    alert(myData.id); //other notation: myData['id']
    alert(myData.impdata); //other notation: myData['impdata']
}

JSON解析器可以在以下页面的底部找到:http://www.json.org/js.html

答案 1 :(得分:1)

您可以返回json响应并使用JS读回:

PHP:

echo json_encode(array('id' => $id, 'impdata' => $impdata));

JS:

alert(data['id']);
alert(data['impdata']);