使用jQuery的$.ajax()方法进行异步交互时,如果传递的数据有数组(例如传输checkbox数据),Action中经常会接受不到数据。

此时应该注意一下data中数组的写法,例如:

//组合成js数组
var
arrUserName=$.map($(".chk_sUserName:checked"),function(n){ return $(n).val(); });
$.ajax({ url:
"DeviceRebootBatch", cache:false, dataType:"json", type :"POST", data:$.param({ arrUserName:arrUserName },true), success:function(data){ alert(data.info); } });

这样Action中的arrUserName就可以接收到数据了。

 

如果不使用$.param()封装,则传到后台的key是"arrUserName[]",可以使用request.getParameterValues("arrUserName[]")获取到数据

分类:

技术点:

相关文章: