这是我的JSP。
<form:form action="changeSrtOrdrRecoveryAccount.do" id="sortOvrlyFrm" autocomplete="off">
<c:if test="${not empty recoveryAccts}">
<ng:dep-datatable stretch="true" xstyle="border:0">
<ng:dep-datatable-tr xstyle="border:0;background-color:#FFFFFF;">
<ng:dep-datatable-th xstyle="border:0"><fmt:message key="label.rcvyAcct"/></ng:dep-datatable-th>
<ng:dep-datatable-th xstyle="border:0">Sort Order</ng:dep-datatable-th>
</ng:dep-datatable-tr>
<c:forEach items="${recoveryAccts }" var="recAcct">
<ng:dep-datatable-tr xstyle="border:0">
<ng:dep-datatable-cell xclass="borderlessTableCell">
<input type="text" name="recAcct" value="<c:out value="${recAcct}"/>" readonly="readonly" />
</ng:dep-datatable-cell>
<ng:dep-datatable-cell xclass="borderlessTableCell">
<select name="srtOption">
<option value="<c:out value="${recAcct}-0"/>">0</option>
<c:forEach var="i" begin="1" end="${total}" step="1" varStatus ="status">
<option value="<c:out value="${recAcct}"/>-<c:out value="${i}"/>"><c:out value="${i}"/></option>
</c:forEach>
</select>
</ng:dep-datatable-cell>
</ng:dep-datatable-tr>
</c:forEach>
</ng:dep-datatable>
</c:if>
</form:form>
这是我生成的代码。我正在寻找一种方法来为第一个帐户分配和显示1的srtOption值,为第二个帐户分配和显示值2.使用当前代码,在srtOption中显示0两个帐户的下拉列表。如果我添加如下所示的选择 那么下拉列表中显示的两个帐户的值都是2。
<option selected value="<c:out value="${recAcct}"/>-<c:out value="${i}"/>"><c:out value="${i}"/></option>
q
<table style="border:0" class="wt-ng-dt-dep wt-ng-dt-dep-stretch" cellpadding="0" cellspacing="0">
<tr style="border:0;background-color:#FFFFFF;" class="wt-ng-dt-dep-tr wt-ng-dt-dep-tr-header">
<th style="border:0" class="wt-ng-dt-dep-th">Recovery Account</th>
<th style="border:0" class="wt-ng-dt-dep-th">Sort Order</th>
</tr>
<tr style="border:0" class="wt-ng-dt-dep-tr">
<td class="borderlessTableCell wt-ng-dt-dep-cell wt-ng-dt-dep-cell-first">
<input type="text" name="recAcct" value="1234567891234 - 1" readonly="readonly" />
</td>
<td class="borderlessTableCell wt-ng-dt-dep-cell wt-ng-dt-dep-cell-first">
<select name="srtOption">
<option value="1234567891234 - 1-0">0</option>
<option selected value="1234567891234 - 1-1">1</option>
<option selected value="1234567891234 - 1-2">2</option>
</select>
</td>
</tr>
<tr style="border:0" class="wt-ng-dt-dep-tr">
<td class="borderlessTableCell wt-ng-dt-dep-cell">
<input type="text" name="recAcct" value="9876543219876 - 2" readonly="readonly" />
</td>
<td class="borderlessTableCell wt-ng-dt-dep-cell">
<select name="srtOption">
<option value="9876543219876 - 2-0">0</option>
<option selected value="9876543219876 - 2-1">1</option>
<option selected value="9876543219876 - 2-2">2</option>
</select>
</td>
</tr>
</table>
谢谢大家对此有任何帮助
答案 0 :(得分:0)
您使用两个具有相同名称的select,它们应该是唯一的,以便您可以使用该名称来提取值。 如果将选定选项添加到该选项,则将选择其值,因此您不能同时使用它们。 最好在选项字段中使用“cinclude”语句来匹配您想要的值,因此它将被选为选中状态。
您需要做的事情如下:
<select name="srtOption">
<option value="0">9876543219876 - 2-0</option>
<option value="1">9876543219876 - 2-1</option>
<option value="2">9876543219876 - 2-2</option>
</select>