我有一个jsp页面,可让用户选择资金的到期年份。它基本上给了他们年份,并将该会计年度传递给java bean,即:
<TR>
<TD colspan=3>
<FONT style="FONT-SIZE: 8pt" face="trebuchet, verdana, tahoma, sans serif" color=black><B>Funding Expiration Year</B></FONT>
</TD>
<TD width="60%">
<select id="selectYearId" name="fundExpirationDate">
<option value=""></option>
<option value="20150930">2015</option>
<option value="20160930">2016</option>
<option value="20170930">2017</option>
<option value="20180930">2018</option>
<option value="20190930">2019</option>
<option value="20200930">2020</option>
<option value="20210930">2021</option>
<option value="20220930">2022</option>
<option value="20230930">2023</option>
<option value="20240930">2024</option>
<option value="20250930">2025</option>
</select>
</TD>
</TR>
我还尝试使用javascript动态地进行年度印刷,因此明年不必再来移除2015年了……但是没有任何运气。 (如果有人可以指导我该怎么做,我将不胜感激。)
无论如何,会计年度结束于09/30。
这一天到来时,我需要删除该选项,以便用户可以选择该年。
这可行吗?
最佳答案
非常粗略:
在Controller / Servlet(甚至JSP)中建立模型。
Calendar cal = Calendar.getInstance();
int currentYear = cal.get(Calendar.YEAR);
List<Integer> years = new ArrayList<Integer>();
for(int i = currentYear - 1; i < currentYear + 10; ++ i){
years.add(i);
}
request.setAttribute("years", years);
在使用JSTL迭代集合的多年以来的JSP中:
<c:forEach items="${years}" var="year"/>
<option value="${year}0930">${year}</option>
</c:forEach>