我在 jsp 页面上有一个主要是自动填充的下拉列表。提交表单后,页面重新加载时,搜索结果将显示在下表中,并且所有下拉列表和其他字段条目都会按照提交之前的状态重新填充。
除了这个值 <option value="A"><spring:message code="code.label.ANE" /></option>
。它不像其他人。它不是从数据库动态创建的,因为它基本上只是将多个结果汇总为一个结果,因此不是有效的数据库代码。其他人将正确地重新选择,但这个不行。
我假设<option value="">${Select}</option>
只起作用,因为它是第一个值,因此默认情况下会被选中。无法实际测试它,因为该值不支持任何搜索。
不,我的值不能成为新的默认值,因为它不太可能是唯一的自定义报告选项。
<div class="col-md-4">
<label>
<spring:message code="common.label.lifeCycle" />
</label>
<form:select path="hrmsLifeCycleCode" id="hrmsLifeCycleCode" cssClass="form-control">
<spring:message code="field.select" var="Select" />
<option value="">${Select}</option>
<option value="A"><spring:message code="code.label.ANE" /></option>
<form:options items="${hrmsLifeCycle}" itemValue="codeValue" itemLabel="longDesc" />
</form:select>
</div>
最佳答案
在jsp中添加以下内容
$(document).ready(function() {
<c:if test="${querySelect == 'A'}">
$("#hrmsLifeCycleCode").val('A');
</c:if>
});
在 Controller 中
model.addAttribute("querySelect", hrmsLifeCycle.getHrmsLifeCycleCode());
由于 Controller 现在正在传递选定的值,因此当选定的值不是自动选择的这种情况时,它将在页面加载后选择它。
这不是最好的解决方案,但它有效。
关于java - jsp下拉列表不自动选择正确的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58435691/