2017-08-14 71 views
0

我正在將struts1遷移到struts2 web項目。 以下是struts1的代碼。使用struts2選擇不應用列表屬性,而是使用選項 - >是否可以?

<html:select property="dobYear" styleId="dobYear" styleClass="text_field text2" style="width:70px" onchange="loadDayOptions(this.options[this.options.selectedIndex].value, getElement('dobMonth').options[getElement('dobMonth').options.selectedIndex].value, getElement('dobDay'));"> 
    <html:option value="">--</html:option> 
    <% 
     int thisYear = Calendar.getInstance().get(Calendar.YEAR); 
     int fromYear = thisYear - 17; 
     int toYear = 1900; 
     for(int i=fromYear; i>=toYear; i--){ 

    %> 
    <html:option value="<%=String.valueOf(i) %>"><%=String.valueOf(i) %></html:option> 
    <% } %> 
</html:select> 

如果我想下面使用S在Struts2代碼:選擇但不使用列表屬性,而不是使用<option>,是它好嗎?我的語法正確嗎?

<s:select value="#{editForm.dobYear}" name="editForm.dobYear" id="dobYear" styleClass="text_field text2" style="width:70px" onchange="loadDayOptions(this.options[this.options.selectedIndex].value, getElement('dobMonth').options[getElement('dobMonth').options.selectedIndex].value, getElement('dobDay'));"> 
    <option value="">--</option> 
    <% 
     int thisYear = Calendar.getInstance().get(Calendar.YEAR); 
     int fromYear = thisYear - 17; 
     int toYear = 1900; 
     for(int i=fromYear; i>=toYear; i--){ 

    %> 
    <option value="<%=String.valueOf(i) %>"><%=String.valueOf(i) %></option> 
    <% } %> 
</s:select> 

回答

0

語法不正確。根據TLD,struts選擇標籤應該有一個空的主體。

您不能以這種方式使用struts選擇標籤。但你可以將它轉換爲html選擇

<select value="${editForm.dobYear}" name="editForm.dobYear" id="dobYear" styleClass="text_field text2" style="width:70px" onchange="loadDayOptions(this.options[this.options.selectedIndex].value, getElement('dobMonth').options[getElement('dobMonth').options.selectedIndex].value, getElement('dobDay'));"> 
    <option value="">--</option> 
    <% 
     int thisYear = Calendar.getInstance().get(Calendar.YEAR); 
     int fromYear = thisYear - 17; 
     int toYear = 1900; 
     for(int i=fromYear; i>=toYear; i--){ 

    %> 
    <option value="<%=String.valueOf(i) %>"><%=String.valueOf(i) %></option> 
    <% } %> 
</select> 
相關問題