Ajax请求,获取JS数组并使其可用

时间:2015-12-20 16:43:02

标签: javascript arrays ajax

我试图获取由PHP文件创建的JS数组,并在页面中的JS脚本中重用JS数组。我在这个网站上尝试了很多不同的解决方案,但似乎没有解决方案,但我不知道我的脚本有什么问题。

我有一个PHP文件,它回应了以下内容:

[["content11", "content12", "content13", "content14","content15"], 
 ["content21", "content22", "content23", "content24","content25"]]

我使用简单的Ajax来检索数据:

$.ajax({
      type: "GET",
      url: myUrlToPhpFile,
      dataType: "html",
      success : function(data) 
          {
              result = data;
              alert (result);

          }
    });

警报显示PHP文件的预期输出,但如果我现在尝试访问数组,如result [0],则输出" ["这是第一个角色。看起来JS将输出视为字符串而不是数组。

我应该做些什么来让JS理解它是一个JS数组?

我已经看到了许多JSON数组的解决方案,但在进入这个方向之前,我想检查是否有简单的JS数组解决方案(这会阻止我重写太多的代码)

由于 劳伦

2 个答案:

答案 0 :(得分:1)

您可以使用JSON.parse将字符串格式化为数组。

JSON.parse(result)[0]

var result = JSON.parse(result);
result[0];

答案 1 :(得分:1)

在你的php文件中,你需要检查你的数组是否使用json_encode回显。

echo json_encode($arr);

在你的javascript文件中:

$.ajax({
  type: "GET",
  url: myUrlToPhpFile,
  dataType: "html", // json
  success : function(data) 
      {
         var res = JSON.parse(html);
         alert(html); // show raw data
         alert(res); // show parsed JSON
      }
});