jqeury ajax复杂数据结构 json
jquery吧
全部回复
仅看楼主
level 1
sikele2236 楼主
发现好多人ajax都用不对,如果有一个对象层次超过两层,就不适合用表单提交,
$.ajax({
url:"...",
data:{a:{b:{c:1},d:[]} },
....
})
数据格式复杂,提交时会变成键值对,这种格式后端一般不处理

正确的
提交复杂格式方法:
var obj = {a:{b:{c:1},d:[]} };
$.ajax({
url:"...",
type:"post",
data:JSON.stringify(obj),
contentType:"application/json",
....
})
老的浏览器没有JSON.stringify,可以引入json2, form提交和json提交有诸多不同,大家在F12里自行观察
2015年12月23日 06点12分 1
level 1
sikele2236 楼主
还有一种第一种方式的变种 {a:JSON.stringify(obj)} 把json字符串给到一个key里,后端需要自行处理字符串,这种方法可行但不如第二种规范
2015年12月23日 06点12分 2
1