通过jquery ajax请求传递数组?

尝试使用ajax请求将数组传递给php页面。 当前响应是ction Array() { [native code] } ,而不是实际的数组内容(im positive不为空)。 这是我的代码:

  function GetPaginationPage(array1) { var jsonString = JSON.stringify(array1); $.ajax({ type: "POST", url: "includes/get_pagination_page.php", data: {data : jsonString}, success: function(data){ $('.contestants_list').append(data); } }); }; 

用json更新,现在通过’undefined’

这里没有理由使用JSON.stringify 。 只需将数组正常发送到PHP。

 function GetPaginationPage(array1) { $.ajax({ type: "POST", url: "includes/get_pagination_page.php", data: { data: array1 }, success: function (data) { $('.contestants_list').append(data); } }); } 

现在在PHP中, $_POST['data']将是一个数组。

更新:你说你正在调用GetPaginationPage

 GetPaginationPage(); 

您需要将其更改为:

 GetPaginationPage(); 

当您在PHP中echo数组时,它将转换为字符串"Array" ,该字符串由JavaScript作为Array对象进行编程。

在传递之前将数组转换为字符串,如下所示:

 array1.join(','); 

或者,如果它是一个复杂的数组,请考虑JSON:

 JSON.stringify(array1); 

我这样做的方法是在JavaScript中创建数组作为分隔(〜)字符串然后我使用explode php函数加载到数组中。