gpt4 book ai didi

javascript - 使用 JSTL 为 :each 正确创建 javascript 数组

转载 作者:行者123 更新时间:2023-11-30 12:04:27 25 4
gpt4 key购买 nike

我正在尝试基于来自 servlet 的数据创建一个数组对象,因为尝试使用 Javascript 变量进行 c:if 是无效的。 session 变量“preeditList”是一个包含 3 个字段的数组。这是我的 JSP 中的以下数组:

  var checkedArray = 
[
<c:forEach items="${preeditList}" var="preeditList" varStatus="status">
{"schedulekey": '${preeditList.getCHK_SCHEDULE_NUMBER()}',
"contractkey": '${preeditList.getCHK_CONTRACT_YEAR()}',
"prevStatus": '${preeditList.getCHK_STATUS()}'
}
<c:if test="${!status.last}">
,
</c:if>
</c:forEach>
] ;

这给了我很多语法错误,说应该是逗号。首先,数组应该看起来像这样还是完全搞砸了:

 var checkArray = [
{
"schedulekey": "43080",
"contractkey": "2016",
"prevStatus": "RP"
},
{
"schedulekey": "43070",
"contractkey": "2016",
"prevStatus": "CP"
}
] ;

如果这没问题,那么我的语法错误是为了解决这个问题。

再次感谢

最佳答案

var countries = [
<c:forEach items="${countryList}" var="country" varStatus="status">
{country: '${country.name}',
provinces : [
<c:forEach items="${country.provinces}" var="province" varStatus="provinceStatus">
'${province.name}'
<c:if test="${!provinceStatus.last}">
,
</c:if>
</c:forEach>
]}
<c:if test="${!status.last}">
,
</c:if>
</c:forEach>
];

其他方式:

var countries = new Array();
<c:forEach items="${countryList}" var="country" varStatus="status">
countryDetails = new Object();
countryDetails.country = ${country.name};
var provinces = new Array();

<c:forEach items="${country.provinces}" var="province" varStatus="provinceStatus">
provinces.push(${province.name});
</c:forEach>
countryDetails.provinces = provinces;
countries.push(countryDetails);
</c:forEach>

输出:

var countries = [
{country:"USA",
provinces: [
"Ohio",
"New York",
"California"
]},
{country:"Canada",
provinces: [
"Ontario",
"Northern Territory",
"Sascetchewan"
]},
]

我从问题中找到了解决方案...... JSTL To JS

关于javascript - 使用 JSTL 为 :each 正确创建 javascript 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35607664/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com