如何将2个不同的PHP数组发送到JavaScript?

问题描述:

如何将2个数组发送到JavaScript,并在JavaScript文件的另一部分中使用它们?(对不起,我是一个新手,整个晚上都在为这个问题而苦苦挣扎)

How can I send 2 arrays to JavaScript and use them in another part of the JavaScript file? (sorry I'm a newbie and struggling all evening with this question)

我有2个数组的php文件.在JavaScript中,我有一个ajax请求来获取数组.但是我只能退回一个.而且我无法保存输出,因此以后可以为每个 进行输出.

I have a php file with 2 arrays. In the JavaScript I have an ajax request to get the arrays. But I can return only one. And I cannot save the output so I can for each it later.

//Get arrays

 $.ajax(
 {
   type: 'get',
   url: '../classes/bestanden_overzicht_client.php',
   data: "id="+id,
     success:function(data)//we got the response of ajax :)
     {
    <-- how can i target the 2 arrays and send them to function below --> 
     },
     error:function(data)
     {
     //no respons show error.
     alert  ("error!");
     alert(JSON.stringify(data)) //we give an alert of the error when there is no respons from ajax
     ;}
});

("#images").fileinput({
        uploadAsync: false,
        overwriteInitial: false,
initialPreview: [

<-- want here the output of the array1


],
intialConfig [

<-- Want here the output of array2

]



<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<?php
$array1 = array();
$array2 = array();

$array1[0] = "numbers"; 
$array1[1] = "letters"; 

$array2[0] = "forname"; 
$array2[0] = "surname"; 

echo json_encode($array1);
echo json_encode($array2);
?>

您只能将一个 json编码对象发送到javascript.要解决此问题,请将您的两个数组放入一个数组中,然后对其进行编码并将其发送回去:

You can only send one json encoded object to javascript. To solve that, put your two arrays into one array, then encode that and send it back:

$return = ["array1"=>$array1, "array2"=>$array2]; 
echo json_encode($return);

您将可以在其中的ajax调用中访问它:

you'll be able to access it in your ajax call there:

//..
success: function(data) {
    var array1 = data.array1;
},
//...