AJAX POST提交number数组数据的请求可php的到的是string数组
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AJAX POST提交number数组数据的请求可php的到的是string数组相关的知识,希望对你有一定的参考价值。
请求方式是POST
服务端是php
想尝试用AJAX提交数组信息
写了一个测试数据
var b = "a[]=1&a[]=2&a[]=3&";
可是PHP端获得的数组却是string数组而不是number数组, 求解!!!
function Connect(destUrl, sendData, CallbackFunc)
var xmlhttp = null;
if(window.XMLHttpRequest)
xmlhttp = new XMLHttpRequest();
else
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.onreadystatechange = function()
if(xmlhttp.readyState == 4)
var data = JSON.parse(xmlhttp.responseText);
CallbackFunc(xmlhttp.status, data);
;
var param = sendData;
xmlhttp.open("POST",destUrl,true);
xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlhttp.send(param);
Connect("test.php", b, function(status, data)
alert(JSON.stringify(data));
);
test.php很简单
<?php
echo json_encode($_POST);
?>
echo json_encode($_POST);
?>
json_encode方法就是把变量转换为json格式的字符串啊。你的问题是什么追问
这个只是返回格式,但是我最后返回得到的数组是"a":["1","2","3"] 变成了字符串数组而不是number数组
参考技术C POST/GET提交的数据永远是字符串类型的,我还真没见过直接得到其他类型的POST/GET。要是你知道了请务必告诉我下!
以上是关于AJAX POST提交number数组数据的请求可php的到的是string数组的主要内容,如果未能解决你的问题,请参考以下文章
jQuery – AJAX get() 和 post() 方法