好吧,也许有人可以帮我解决一个我正在试图解决的问题。基本上,我有一个JSP页面,它获取Country对象列表(来自Spring Portlet SimpleFormController的方法referenceData(),不完全相关,但只是提及它的情况)。每个国家对象都有一组省的对象和每个省和国家有一个名称字段:从JSP列表填充JavaScript数组
public class Country {
private String name;
private Set<Province> provinces;
//Getters and setters
}
public class Province {
private String name;
//Getters and setters
}
现在我有两个下拉菜单在我的JSP对国家和省,我想过滤由全国各省。我一直在关注这个tutorial/guide以在JavaScript中进行链选择。
现在我需要一种动态的方式从我的内容创建JavaScript数组。在任何人提到AJAX之前,这是不可能的,因为我们的项目使用portlet,我们希望远离使用DWR之类的框架或创建servlet。这里是JavaScript/JSP我有这么远,但它不填充任何东西的数组:
var countries = new Array();
<c:forEach items="${countryList}" var="country" varStatus="status">
countries[status.index] = new Array();
countries[status.index]['country'] = ${country.name};
countries[status.index]['provinces'] =
[
<c:forEach items="${country.provinces}" var="province" varStatus="provinceStatus">
'${province.name}'
<c:if test="${!provinceStatus.last}">
,
</c:if>
</c:forEach>
];
</c:forEach>
有谁知道如何在上述情况下还是什么“最佳实践”创建JSP的JavaScript数组在这种情况下会被考虑?提前致谢!
第二个会导致生成的代码少得多,所以我一定会走这条路。 – Pointy 2010-06-14 21:16:56
甜,谢谢!我的控制器遇到了问题,但这正是我所寻找的......再次感谢!如果有人想知道,我最终会用第二种解决方案来生成JSON。 – 2010-06-14 21:32:14
很高兴我能帮到你。 – 2010-06-14 23:32:02