Java Spring将默认值添加到jsp中的表单:选项

Java Spring将默认值添加到jsp中的表单:选项,java,jsp,spring-mvc,Java,Jsp,Spring Mvc,是否可以在我的下拉列表中选择一些默认值,该列表在my.jsp中实现如下: <div class="form-group"> <form:label path="month">Select month</form:label> <form:select path="month" class="form-control"> <form:options items="${months}" /> </form:se

是否可以在我的下拉列表中选择一些默认值,该列表在my.jsp中实现如下:

<div class="form-group">
   <form:label path="month">Select month</form:label>
   <form:select path="month" class="form-control">
   <form:options items="${months}" />
   </form:select>
</div> 

我需要在加载页面后预先选择一些值,例如“三月”

您需要使用forEach遍历列表,然后使用if条件选择希望选择为默认月份的月份。见以下示例:

<c:choose>
    <c:forEach items="${months}" var="month">
        <c:when test="${month == 'March'}">
            <option value="${month}" selected>${month}</option>
        </c:when>
        <c:otherwise>
          <option value="${month}">${month}</option>
        </c:otherwise>
    </c:forEach>
  </c:choose>

${month}
${month}

也许看看您已经为下拉列表设置了选定值。Spring将使用模型的属性“月”中的值作为所选值。您需要做的就是从Java action方法中设置“month”属性值。现在下拉列表只显示一个值:March,而不是other months。我更新了答案,以前的答案有一个if条件,因此,它只在满足条件时打印选项,而不打印其他值,这就是为什么你只有三月。我得到一个没有标记的错误,所以我添加了它,现在它再次显示所有的值,但没有选择三月。不会遍历您的列表。遍历列表的每个元素,然后将其分配给month变量,然后应用于变量month的值。错误是什么?我得到了这个:org.apache.jasper.jaspereException:处理第111行的JSP页面/WEB-INF/views/myTeams.JSP时发生异常108:109:110:111:112:${month}113:114:原因:javax.servlet.jsp.JspTagException:非法使用when-style标记而不选择作为其直接父项。
model.addAttribute("months", getMonths()); 
<c:choose>
    <c:forEach items="${months}" var="month">
        <c:when test="${month == 'March'}">
            <option value="${month}" selected>${month}</option>
        </c:when>
        <c:otherwise>
          <option value="${month}">${month}</option>
        </c:otherwise>
    </c:forEach>
  </c:choose>