javascript - 如何从 AJAX 调用中返回一个数组?

标签 javascript php jquery json ajax

我正在寻找一种更好的解决方案来使用 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/

相关文章:

JavaScript - 如何从函数传递/存储值以形成隐藏字段?

javascript - 当 NodeJS 应用程序设计为在客户端上运行时,如何在它的服务器端使用 javascript 库?

php - 在结果数组中添加参数

jquery - 如何应用使用 jQuery 动态加载的内联和/或外部 CSS

javascript - 如何将变量设置为等于子元素中属性的值?

javascript - 如何计算表格中的所有值?

Javascript 模块 - 不能在模块外使用 import 语句

javascript - 如何显示在对象中声明为 url 且这些对象存储在数组中的图像?

PHP MySQL 结果集

php - PHP邮件功能无法完成电子邮件的发送