把一个表格对象弄成一个后台能解析的格式,通过AJAX传递参数到后台
后台拿到后,需要再解析成LIST对象,我要循环这个LIST对象,到表中做更新。
现在具体情况是:
前台代码:
var paramArr = new Array();
$("#table tr:gt(0)").each(function(index){
var param = '{ "id":"'+this.children[1].innerText+'","value":"'+ (obj.val()/100) +'"}';
paramArr.push(param);
})
/**
前台数据我拼出来的格式:
"{"value":"0.9","id":"0000000001"},{"value":"0.9","id":"0000000002"}"
**/
$.ajax({
data : { updateData : paramArr.toString() }
})
然后我通过toString()传到后台
后台代码:
String test = request.getParameter("updateData");
这个东西打出来的样子:
// {"value":"0.9","id":"0000000001"},{"value":"0.9","id":"0000000002"}
你这个json传的有问题,已经不是json对象了,你应该传递json数组到后台,大部分框架,比如spring 可以直接帮你转成list的
{"value":"0.9","id":"0000000001"},{"value":"0.9","id":"0000000002"}
这是你在后台拿到的字符串,很好的格式,先加工一下:左右各加个中括号,变成:
[{"value":"0.9","id":"0000000001"},{"value":"0.9","id":"0000000002"}]
这就是一个标准的json格式的字符串了,剩下的就so easy了 (网上搜json转对象,一大堆)
可以通过map取值啊