jquery Ajax 如何传递数组类型参数

上次做项目的时候碰见一个向后台传递数组参数的问题

稍微研究了一下:

假设需要向后台传递的参数为:
var userid = [1,2,3];
var username=["a","b","c"];
var school="南山幼儿园";

有两种比较简单的方法:
1.加入traditional防止深度序列化
js代码:
$.ajax({
url:"*****",
data:{
"userid":userid,
"username":username,
"school":school
},
dataType:"json",
type:"post",
traditional:true,//防止深度序列化
cache:false,
async:false,
success:function(){
....
}
});

java代码:
@requesMapping(value="/****", method=RequestMethod.POST)
@responseBody
public String testForAjax(@RequestParam(value="userid") Integer[] userid, @RequestParam(value="username" String[] username, String school){
.....
}
2.指定参数类型

js代码:
$.ajax({
url:"*****",
data:{
"userid":userid,
"username":username,
"school":school
},
dataType:"json",
type:"post",
cache:false,
async:false,
success:function(){
....
}
});

java代码:
@requesMapping(value="/****", method=RequestMethod.POST)
@responseBody
public String testForAjax(@RequestParam(value="userid[]") Integer[] userid, @RequestParam(value="username[]" String[] username, String school){
.....
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章