2015-04-23 87 views
0

我有以下AJAX代码:AJAX和JS,无法读取JSON数据?

var ajax = new XMLHttpRequest(); 
axaj.open("POST", "index.php", true); 
ajax.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); 

ajax.onreadystatechange = function(){ 
    if(x.readyState == 4 && x.status == 200){ 
     var returnVal = ajax.responseText; 
    } 
} 

ajax.send("nextMax=-1"); 

而且对一些PHP与结尾:

echo json_encode(array(
    'next_id' => $nextID 
)); 

exit(); 

这一切工作,因为它是。如果我打印出returnVal AJAX调用里面,它打印出正确的数组,用正确的值:

{"next_id":"935210077606657948"} 

但我不能直接访问ID。我试过

var nextID = returnVal.next_id; 

var nextID = returnVal['next_id']; 

和其他变化,但都返回undefined

如何从returnVal内获得数组元素?

在此先感谢。

回答

0

发布问题后发现解决方案不是30秒。但是,对于那些谁是在同一个地方:

开关

var returnVal = ajax.responseText; 

var returnVal = JSON.parse(ajax.responseText); 

,然后调用工作:

returnVal.next_id;