粘贴下面的代码我用来创建下拉列表和java脚本来做一些事情
<td>
<select id="currentCustomer" onchange="showSelectedCustomer(this)">
<c:forEach var="Customer" items="${listCustomer}" >
<option value="<c:out value="${Customer}" />"><c:out value="${Customer}" />
</option>
</c:forEach>
</select>
</td>
function showSelectedCustomer(dropdown) {
var selectedCustomer = dropdown.options[dropdown.selectedIndex].value;
var currentCustomer = document.getElementById('currentCustomer');
var context = document.forms[0].context.value;
document.forms[0].mode.value = "UPDATE";
document.forms[0].custName.value = dropdown.options[dropdown.selectedIndex].value;
document.forms[0].action=context+"/updateReportDetail.do";
document.forms[0].method="POST";
document.forms[0].submit();
}
我的问题是 如何在下拉列表中动态设置onselected值。
让我在这里简要解释一下,
最初在登录应用程序时,着陆“x.JSP”页面将显示具有多个客户名称的下拉列表,默认情况下第一个客户名称为选定的客户名称。 如果我在下拉列表中选择其他客户名称我正在调用Javascript [onchage事件]来提交表单并在DAO java类中为所选客户执行其他操作并返回“x.JSP”页面。
现在我需要在下拉列表中设置最新的客户名称[即我在DAO java类中处理的客户]作为选择的客户名称。
帮助我们。谢谢你们的努力。
答案 0 :(得分:2)
在forEach循环中,检查当前迭代中的Customer是否与您预先选择的匹配。您没有说明在页面加载时如何选择“正确”的客户,因此我将使用一些伪代码。
<c:forEach var="Customer" items="${listCustomer}" >
<% String selected = "";
if (customer.equals(predeterminedCustomerToBeSelected)) {
selected = "selected"; }
%>
<option value="<c:out value="${Customer}" />" <%=selected%>><c:out value="${Customer}" />
</option>
</c:forEach>