问题: 通过ajax向后台传递数组,后台接受不到。
解决方法 ajax没办法传数组(其实可以,就是试了很多方法都不可行); 在前端将数组转为字符串形式,然后包装成json数据格式,传递到后台; 后台照常接收,通过split解析一下数组。
栗子: 前端:
var ids
=[];
ids
.push(1);
ids
.push(2);
ids
.push(3);
$
.ajax({
url
: url
,
type
: "post",
traditional
: true,
dataType
: "json",
async : false,
data
: {"ids":ids
.join(',')},
success
: function(d
) {
}
});
后台接收:
@ResponseBody
@RequestMapping(value
= "/xxx", method
= RequestMethod
.POST
)
public WebResult
xxx(HttpServletRequest request
, HttpServletResponse response
){
String
[] ids
=request
.getParameter("ids").split(",");
}