通过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函数加载到数组中。