ajax调用后迭代php数组


iterate php array after ajax call

我得到了一个ajax函数,它调用一个返回数组的php:

<?php
$testing = array("one","two","three", "four");   
echo json_encode($testing);        
?>

我用这个ajax调用来调用它;

$.ajax({
url:"ajax_response.php",
type:"POST",   
success:function(msg)
{
  var array = msg;    
  var test = array[2];      
  alert(test);
}
});

问题是,我想将array[1]作为"一",并在每个数组位置上获取1个字符,例如:array[0]="o",array[1]="n",array[2]="e"。它就像json编码或semething一样,将数组变量拆分为字符。

有什么帮助吗??

提前感谢

您必须解析您的答案。最简单的方法是在AJAX调用中放入dataType

$.ajax({
    url: "ajax_response.php",
    dataType: 'json', // add the dataType
    type: "POST",   
    success: function(msg) {
        var array = msg;    
        var test = array[2];      
        alert(test);
    }
});

或者你可以"手动"解析它。这有时是必要的:

success: function(msg) {
    var array = JSON.parse(msg); // or parse it manually
    var test = array[2];      
    alert(test);
}

您的响应是字符串格式的,请在成功函数中尝试

success:function(msg)
{
  var array ;
 eval('array ='+msg );  
  var test = array[2];      
  alert(test);
}