我正在使用JSTL
填充下拉项目,其中country是具有{ id, name, code }
属性的项目。
我需要获取所选国家/地区的名称和代码。
例如:
Country{c_id, c_name, c_code}
是country bean的结构。当用户选择此项时,我需要检索两个值c_name,c_code。
我做了什么:
据我所知,只有itemValue
c_name
或c_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>
我该怎么做?
答案 0 :(得分:2)
将option标签的值设置为可以轻松解析的String,例如
值= “$ {country.countryName}:$ {country.countryName}”
在控制器中,您可以在“:”字符上拆分字符串以检索您的两个值。