2016-12-12 2 views
2

У меня есть этот класс в моей модели Spring-model-view-controller (MVC) Spring. Версия платформы Spring-model-view-controller (MVC) - 3.2.8.Spring MVC <form: select not binding

У меня есть это в моем JSP

<form:select id="statusKeyId" path="statusKey" cssStyle="width: 150px" > 
    <form:option value="0"><fmt:message key="select.option.all"/></form:option> 
    <c:forEach items="${allStatusList}" var="statusVar"> 
    <form:option value="${statusVar.key}" >             
    <c:choose> 
    <c:when test="${!(statusVar.name eq 'AWARDED') && !(statusVar.name eq 'CANCELLED') && !(statusVar.name eq 'IN_PROGRESS') && !(statusVar.name eq 'REFUSED')}" > 
     &nbsp;&nbsp;<fmt:message key="${statusVar.key}" /> 
    </c:when> 
    <c:otherwise> 
     <fmt:message key="${statusVar.key}" /> 
    </c:otherwise> 
    </c:choose>                                           
    </form:option> 
    </c:forEach>          
</form:select> 

Это источник сгенерированной страницы:

<select id="statusKeyId" name="statusKey" style="width: 150px"> 
    <option value="0">All</option>       
    <option value="AWARDED" selected="selected"> AWARDED </option> 
    <option value="NO_PENDING_OPERATIONS"> &nbsp;&nbsp;No pending operations </option> 
    <option value="IN_PROGRESS_EXTENSION"> &nbsp;&nbsp;With an In Progress Extension </option> 
    <option value="WAITING_FOR_WITHDRAW"> &nbsp;&nbsp;Waiting for Tdk Permit Withdrawal </option> 
    <option value="MODIFICATION_IN_PROGRESS"> &nbsp;&nbsp;With modification in progress </option> 
    <option value="RENEWAL_REQUEST"> &nbsp;&nbsp;With a pending renewal request </option> 
    <option value="DISCARDED">DISCARDED</option> 
    <option value="Permit_DISCARDED_EXPIRY_PERMIT"> &nbsp;&nbsp;Expiry of Permit PERMIT </option> 
    <option value="Permit_DISCARDED_HOLDER_WITHDRAWAL"> &nbsp;&nbsp;Award Holder Withdrawal </option> 
    <option value="Permit_DISCARDED_NON_PAYMENT_FEES"> &nbsp;&nbsp;Non Payment of Fees </option> 
    <option value="Permit_DISCARDED_OTHER"> &nbsp;&nbsp;Other </option> 
    <option value="IN_PROGRESS">IN PROGRESS </option> 
    <option value="REFUSED"> REFUSED </option> 
</select> 

Как вы видите вариант ПРИСУЖДЕНЫ выбран, но на странице опция 0/ALL выбрано

ответ

0

HTML-код в порядке, проблема заключается в порядке выполнения и рендеринга.

Что вам нужно сделать, это программно создать элемент выбора HTML с помощью JS. Что-то вроде https://stackoverflow.com/a/17002049/643500

+0

Тогда в чем смысл использования формы: выберите путь? –

+0

путь добавит статус id = statusKey "name =" statusKey ". Вы используете JQuery? –