我正在寻找一种更好的解决方案来使用 jQuery 进行 AJAX 调用,让 PHP 文件返回一个数组,并让它作为 Javascript 数组出现在客户端。这是我一直在做的事情:
PHP 文件(Example.php):
<?php
$id_numbers = array('NES-ZL','NES-AL','SNS-ZL');
for ($i=0; $i<count($the_array); $i++){
echo $id_numbers[$i];
echo '|';
}
?>
JS 文件:
id_numbers = new Array();
$.ajax({
url:"Example.php",
type:"POST",
success:function(msg){
id_numbers = msg.split('|');
}
});
我目前的方法对我的口味来说有点太复杂了。
我想做的就是能够做到
return $id_numbers;
在 PHP 端,在 AJAX 调用后直接将其转换为 Javascript 数组。
有什么想法吗?
最佳答案
使用 JSON在客户端和服务器之间传输数据类型(数组和对象)。
在 PHP 中:
在 JavaScript 中:
PHP:
echo json_encode($id_numbers);
JavaScript:
id_numbers = JSON.parse(msg);
正如 Wolfgang 所提到的,您可以给 jQuery 提供第四个参数来自动为您解码 JSON。
id_numbers = new Array();
$.ajax({
url:"Example.php",
type:"POST",
success:function(msg){
id_numbers = msg;
},
dataType:"json"
});
关于javascript - 如何从 AJAX 调用中返回一个数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8823925/