2012-08-09 44 views
1

我使用JSTL來填充下拉項目,其中國家是具有{ id, name, code }屬性的項目。設置下拉選擇bean屬性的值:彈簧

我的需求是獲取所選國家的名稱和代碼。

例如:

Country{c_id, c_name, c_code}是國家豆的結構。當用戶選擇這個項目時,我需要檢索兩個值c_name,c_code。

我所做的尚未:

據我所知,只有一個值可以被分配到itemValue要麼c_namec_code。 我試圖填充所有國家和匹配選定的國家,然後設置爲另一個路徑變量,但這也不起作用。

我的代碼

<form:select path="selectedCountry" id="ddlCountryId"> 
<c:forEach items="${countries}" var="country"> 
    <option value="${country.countryName}" ${country.countryName == selectedCountry ? 'selected' : ''}>${country.countryName}</option> 
    </c:forEach> 
    </form:select> 
    <input class="login_submit" type="submit" value="Login" id="btnSubmitId"> 

    <!-- Read country code of selected country --> 
    <c:forEach var="country" items="${countries}"> 
     <c:out value="country"></c:out> 
     <c:choose> 
     <c:when test="${country.countryName==loginCreadetials.selectedCountry}"> 
     <input name="countryCode" type="hidden" value="${country.countryCode}"/> 

     </c:when> 
     </c:choose> 
    </c:forEach> 

我怎樣才能做到這一點?

回答

2

設置你的選項標記爲一個字符串,就可以輕鬆解析的值,例如

值= 「$ {} country.countryName:$ {} country.countryName」

在您的控制器中,您可以將字符串拆分爲':'字符以檢索您的兩個值。

+0

+1我會檢查它。 – 2012-08-16 14:17:31