$.ajax({ type: 'post', url: "/eventVmChange/eventVmChange-confirmChange.html", /*确认变更*/ dataType: 'json', //防止深度序列化 traditional: true, data: {"idList": idList}, success: function () { mini.alert("变更成功"); self.vmConfDetection.reload(); }, error: function () { mini.alert("变更失败"); self.vmConfDetection.reload(); }});
这个idList 是复选框选中记录的一个数组,在没有加上traditional:true之前,jquery.param()解析出错了,后台获取到的idList为空
查询这个属性得知,这个属性默认是false,jquery会深度序列化这个对象,以适应PHP等框架,我们可以通过设置tradtional为true阻止深度序列化
这样以后碰到复选框传多个id的时候就不用前台拼后台spilt了,直接用ajax的traditional属性,传过去一个数组,后台直接一个List<Long> idList接受即可。非常方便。
联系客服