在ajax中上传参数data时,如果某个数组参数为空的话,默认就被舍弃,这样的话ajax发送的参数与后台接收的参数就对应不上了,这样就会报400的错误,这里提供的解决办法就是在后台接收时做一个判断:
上传的ajax配置如下:
var data1 = [];
var text = "123";
$.ajax({
type:"post",
url:"index-index-test",
data: {data1:data1,text:text},
dataType: 'json',
success: function(data){
console.log(data);
},
error: function(){
console.log("错误.");
}
});
后台接受的方式如下,这里使用php:
$data1= isset($_POST['data1'])?$_POST['data1']:array();
$text= isset($_POST['text'])?$_POST['text']:array();
这样就可以完美解决ajax上传空数组报错的问题了。