在下拉选择中设置bean属性的值:Spring

时间:2012-08-09 13:05:06

标签: java spring spring-mvc jstl javabeans

我正在使用JSTL填充下拉项目,其中country是具有{ id, name, code }属性的项目。

我需要获取所选国家/地区的名称和代码。

例如:

Country{c_id, c_name, c_code}是country bean的结构。当用户选择此项时,我需要检索两个值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>

我该怎么做?

1 个答案:

答案 0 :(得分:2)

将option标签的值设置为可以轻松解析的String,例如

  

值= “$ {country.countryName}:$ {country.countryName}”

在控制器中,您可以在“:”字符上拆分字符串以检索您的两个值。