如何从AJAX调用返回数组? [英] How to return an array from an AJAX call?

查看:99
本文介绍了如何从AJAX调用返回数组?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在寻找到了AJAX调用使用jQuery,具有PHP文件返回一个数组一个更好的解决方案,并让它出来的客户端作为一个Javascript数组。这是我一直在做这样的:

I'm searching for a better solution to making an AJAX call with jQuery, having the PHP file return an array, and have it come out client-side as a Javascript array. Here is what I have been doing this:

PHP文件(使用example.php):

PHP File (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文件:

JS File:

id_numbers = new Array();
$.ajax({
    url:"Example.php",
    type:"POST",
    success:function(msg){
        id_numbers = msg.split('|');
    }
});

我目前的方法是只是有点太令人费解了我的口味。

My current method is just a little too convoluted for my taste.

我想要做的是能够公正

return $id_numbers;

在PHP端,并直接将其翻译为AJAX调用后一个Javascript数组。

on the PHP side and directly translate it to a Javascript array after the AJAX call.

想法,任何人吗?

推荐答案

使用 JSON 以客户端之间传输的数据类型(数组和对象)和服务器。

Use JSON to transfer data types (arrays and objects) between client and server.

在PHP的:

在JavaScript的:

In JavaScript:

PHP:

echo json_encode($id_numbers);

JavaScript的:

JavaScript:

id_numbers = JSON.parse(msg);

由于沃尔夫冈提到的,你可以给一个第四个参数jQuery来自动去code JSON你。

As Wolfgang mentioned, you can give a fourth parameter to jQuery to automatically decode JSON for you.

id_numbers = new Array();
$.ajax({
    url:"Example.php",
    type:"POST",
    success:function(msg){
        id_numbers = msg;
    },
    dataType:"json"
});

这篇关于如何从AJAX调用返回数组?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆