我有一个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>

08-25 09:24