[英]Put json string into a javascript variable json
我在控制台镶边中有此:[{“ id”:40,“ endDate”:“ 2017-04-22”,“ dataA”:“ 2017-04-19”,“ nrC”:2,“ type”: “CO”, “dataD”: “2017年4月19日”, “的startDate”: “2017年4月20日”},{ “ID”:40 “结束日期”: “2017年4月26日”,“数据A “:” 2017年4月26" 日, “NRC”:4 “tyoe”: “CP”, “dataD”: “2017年4月23日”, “的startDate”: “2017年4月25日”},
此json字符串来自调用DAO类以从db获取信息的servlet。 因此,该字符串从请求会话(动态地)传递到一个jsp页面中……然后我将其放入var DAYS = '${jsonArrayString}';
然后console.log(DAYS);
然后在上面打印该json字符串。 所以...它可以打印两个以上的数据。 它必须放入一个javascript变量中,这样:
var DAYS = '${jsonArrayString}'; //That's what's on my console..and it comes from session into this jsp page
我认为它必须通过foreach进行迭代,并以该格式打印。
var USER_DAYS = [
{
id: value from jsonArrayString,
date: value from jsonArrayString,
title: value from jsonArrayString,
start: new Date(value from jsonArrayString),
end: new Date(value from jsonArrayString),
allDay: true,
className: 'done'
},
];
我试图手动输入值,它的工作原理是这样的:
var USER_DAYS = [
{
id: 1,
date: '2017-04-05',
title: 'CO',
start: new Date(2017, 3, 5),
end: new Date(2017, 3, 7),
allDay: true,
className: 'done'
},
我不知道从该json字符串(可以是任何...多于2条记录)中放入值,这就是为什么我需要遍历该json字符串的原因。 我希望将值仅以该格式放在该变量中(var USER_DAYS)
我试过这样的东西,但是不起作用:
<c:forEach items="${jsonArrayString}" var="jsonArrayString">
{
id: '${jsonArrayString.nrC}' ,
date: '${jsonArrayString.dataD}' ,
title: '${jsonArrayString.type}' ,
startDate: '${jsonArrayString.startDate}',
endDate: '${jsonArrayString.endDate}',
allDay: true,
className: 'done'
},
</c:forEach>
];
或像这样:
var USER_DAYS = [
{
id: DAYS.nrC,
date: DAYS.dataD,
title: DAYS.type,
start: new Date(DAYS.startDate),
end: new Date(DAYS.endDate),
allDay: true,
className: 'done'
},
];
这个怎么做?
尝试将json字符串解析为json对象。
例
var USER_DAYS = JSON.parse('${jsonArrayString}')
JavaScript代码仅在客户端运行,而JSP在服务器上运行。 在服务器上呈现页面时,无法迭代JavaScript变量。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.