Весна: связать с флажком - PullRequest
0 голосов
/ 29 марта 2011

В приведенном ниже коде testData является HashMap.Я пытаюсь привязать флажок с тегом spring:bind.Я получаю синтаксические ошибки весной: связать.Не могли бы вы сказать мне, в чем проблема в моем коде?

<c:forEach items="${testData}" var="test" varStatus="loopStatus"> 
     <spring:bind path="${testData[${loopStatus.index}]}.selected"> 
        <input type="hidden" name="_${status.expression}"> 
        <input type="checkbox" name="${status.expression}" value="true"> 
            <c:if test="${status.value}">checked</c:if> 
     </spring:bind> 
   </c:forEach> 

Ответы [ 3 ]

2 голосов
/ 29 марта 2011

Я не уверен, что у вас есть другая синтаксическая ошибка, но начните с изменения этого:

<spring:bind path="${testData[${loopStatus.index}]}.selected">

для

<spring:bind path="${testData[loopStatus.index]}.selected">
0 голосов
/ 03 июля 2012

Во-первых, на языке выражений ${ начинает выражение, а } заканчивает его.Вам не нужно вкладывать их или что-то в этом роде, поэтому ${testData[${loopStatus.index}]} является вашей синтаксической ошибкой, а .selected находится вне вашего выражения, поэтому должно быть просто: ${testData[loopStatus.index].selected}.

Теперь в forEach, ваш атрибут var определяет имя переменной, которая содержит текущий элемент.Поэтому вам редко нужно использовать varStatus.Вы можете просто выполнить тест как ${test.selected}.

Наконец, ваш атрибут checked находится за пределами вашего элемента ввода флажка!

Итак:

<c:forEach items="${testData}" var="test"> 
   <spring:bind path="${test.selected}"> 
      <input type="hidden" name="_${status.expression}"> 
      <input type="checkbox" name="${status.expression}" value="true" <c:if test="${status.value}">checked</c:if>>
   </spring:bind> 
</c:forEach>

(не уверен, что вам когда-нибудь понадобится скрытое поле, мы не используем его ни для одного из наших флажков).

0 голосов
/ 29 марта 2011

Путь вашей весны: тег привязки, вероятно, неверен.Я не могу сказать вам правильный путь, так как вы не описали объект, к которому привязываетесь.

Возможно, вы захотите использовать метку : флажок вместо пружинного связывания.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...