php数组到javascript数组(从函数调用)

时间:2014-03-01 10:47:09

标签: javascript php arrays

我在php文件test.php中有一个数组;我在Javascript数组中需要它。

<?php 
$phpArray = glob('*.jpg');
echo json_encode($phpArray);
?>

我需要Javascript数组中的每个文件名,所以我可以像以下一样访问它:

myJavasciptArray[0];

我需要从函数中加载我的JavaScript数组:

$("#button2").click(function(){
$.get("test.php",function(data){
var mypics=data;
  alert(mypics[1]);      
});
});

但是我得到的不是数组中的每个文件名都是一个字符。

myJavasciptArray[0]="["

而不是:

myJavasciptArray[0]="myfile1.jpg"

4 个答案:

答案 0 :(得分:1)

而不是使用jQuery.get(),请使用jQuery.getJson(),您应该没问题。如果不这样做,myJavascriptArray是一个字符串,someString[0]表示字符串的第一个字母。

答案 1 :(得分:0)

您没有以JSON类型获得结果。

json dataType添加到$.get(),以便将结果解析为JSON:

$("#button2").click(function(){
   $.get("test.php",function(data){
      var mypics=data;
      alert(mypics[1]);      
   }, 'json');
});

答案 2 :(得分:0)

在此处尝试JSON.parse

$.get("test.php",function(data){
    var mypics = JSON.parse(data);
    alert(mypics[1]);      
});

答案 3 :(得分:0)

你得到的是从请求返回的字符串,你需要使用JSON.parse()函数来获取正确的json对象

var mypics = JSON.parse(data)