Ajax – 如何在成功函数中使用返回的数组
嗨,我有一个返回数组的PHP代码。 我希望能够在我的ajax成功函数中使用这个数组,但我不知道如何去做这个。 我试过以下,但没有运气。
php代码:
$arr = array(); $arr[0] = "Mark Reed" $arr[1] = "34"; $arr[2] = "Australia"; exit($arr);
js代码:
$.ajax({ type: "POST", url: "/returndetails.php", data: 'id=' + userid, success: function (data) { document.getElementById("name").innerHTML = data[0]; document.getElementById("age").innerHTML = data[1]; document.getElementById("location").innerHTML = data[2]; } });
您应该从服务器返回数据作为JSON。
PHP
$arr = array(); $arr[0] = "Mark Reed"; $arr[1] = "34"; $arr[2] = "Australia"; echo json_encode($arr); exit();
JS
$.ajax({ type: "POST", url: "/returndetails.php", data: 'id=' + userid, dataType: "json", // Set the data type so jQuery can parse it for you success: function (data) { document.getElementById("name").innerHTML = data[0]; document.getElementById("age").innerHTML = data[1]; document.getElementById("location").innerHTML = data[2]; } });
一个小错误:
不是: exit($arr);
替换为: echo json_encode($arr);
有一个问题,当你想显示例如data[0]
和data[1]
,它看起来像是字符串中的一个字符。 它解决了添加header("Content-Type: application/json");
在应用echo json_encode($arr)
之前echo json_encode($arr)