javascript把JSON对象数组转换成JSON字符串
varhumen={'id':0,'name':'','age':0};varhumens=newArray();functionadd(id,name,age){hum...
var humen= {
'id' : 0,
'name' : '',
'age' : 0
};
var humens = new Array();
function add(id,name,age){
humens.push( function () {
return function () {
return humen;
};
});
var men = humens[humens.length - 1];
men.id = id;
men.name = name;
men.age = age;
}
function main(){
add(0, '迪奥斯', 2);
add(1, '琼爱绸', 3);
add(2, '佰付梅', 1);
var json = JSON.stringify(humens);//好像行不通
//???如何把这些转换成
} 展开
'id' : 0,
'name' : '',
'age' : 0
};
var humens = new Array();
function add(id,name,age){
humens.push( function () {
return function () {
return humen;
};
});
var men = humens[humens.length - 1];
men.id = id;
men.name = name;
men.age = age;
}
function main(){
add(0, '迪奥斯', 2);
add(1, '琼爱绸', 3);
add(2, '佰付梅', 1);
var json = JSON.stringify(humens);//好像行不通
//???如何把这些转换成
} 展开
3个回答
展开全部
add方法改成
function add(id,name,age){
humens.push({
id: id,
name: name,
age: age
});
}
原因是你push进去的是function
function是不可序列化的, stringify之后会变成null
function add(id,name,age){
humens.push({
id: id,
name: name,
age: age
});
}
原因是你push进去的是function
function是不可序列化的, stringify之后会变成null
追问
那么怎么把序列化后的JSON数据传到Struts2的Action中?
追答
js这边请求一下服务器就可以了
如果是异步提交的话
用你熟悉的脚本库发个ajax请求就行
以jQuery为例 $.post('xxx.action', { json: json });
如果是同步提交的话
用window.open('xxx.action?json=' + json, '_self');就行
或者做个表单(form), 修改表单的域(input.value = json), 然后再提交(form.submit();)
服务器action那边要有对应的setter方法
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
JSON.stringify 是 json2.js的方法,你确认加入的 json2.js了么?
追问
我确认。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
JSON.stringity(humens )拼写错误, t 改成 f
JSON.stringify(humens )
JSON.stringify(humens )
更多追问追答
追问
具体原因不是这里。
追答
你用什么浏览器测试的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询