◆ 发送请求格式
$('#add_submit_ajax').click(function(){
$.ajax({
url: '/ajax_add_app',
// data: {'user': 123,'host_list': [1,2,3,4]},
data: $('#add_form').serialize(),
type: "POST",
dataType: 'JSON', // 内部
traditional: true,
success: function(obj){
console.log(obj);
},
error: function () {
}
})
});
建议:永远让服务器端返回一个字典
return HttpResponse(json.dumps(字典))
◆ traditional: true
复选框选中会传输一个数组,在没有加上traditional:true之前,jquery.param()解析出错了,后台获取到的idList为空。
traditional这个属性默认是false,jquery会深度序列化这个对象,以适应PHP等框架,可以通过设置tradtional为true阻止深度序列化
这样以后碰到复选框传多个值的时候就不用前台拼后台spilt了,直接用ajax的traditional属性,传过去一个数组,后台直接一个List<Long> idList接受即可。