我正在尝试使用Ajax并尝试从PHP函数向调用javascript函数发送一维非关联数组。数组很简单:
$arr[0] = 1900-1905
$arr[1] = 1905-1911
等。 由于各种原因我使用jQuery,但我对使用Ajax的原始Javascript方式相当熟悉,但我似乎无法找到如何使用Javascript处理JSON数据客户端的方法。我将使用类似
的调用来调用PHP函数myserver.com/myfunction.php?var1=1&var2=2&var3=3
我知道你必须在PHP函数中使用echo json_encode($ arr),但是你如何在Ajax方法中将JSON转换回数组并访问数组元素?通过阅读本论坛的一些答案,这是人们陷入困境的部分。
非常感谢。
答案 0 :(得分:2)
试试这个
function callAjax()
{
var xmlhttp;
if (window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
else
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200) //Success
{
var objResponse = JSON.parse(xmlhttp.responseText); //JSON.parse Parses a string as JSON
console.log(objResponse[0]); //1900-1905
}
}
xmlhttp.open("GET","myserver.com/myfunction.php?var1=1&var2=2&var3=3",true);
xmlhttp.send();
}
答案 1 :(得分:0)
这个块是回调。如您所见,您的问题可以通过函数调用解决。
success: function(response) {
//do something with jQuery.parseJSON
}