Grails + получить следующее значение в г: каждый - PullRequest
2 голосов
/ 14 сентября 2010

У меня есть список таких флажков:

<g:each in="${mylist}" var = "item" >
     <tr>
      <td colspan="2"><g:checkBox value="${dimension.id}" name="${item.id}"/> - ${item.name}</td>
     </tr>
</g:each>

Я должен изменить его, чтобы получить 2 столбца в каждой строке (2 флажка в строке)

<g:each in="${mylist}" var = "item" >
   <td> checkbox with item </td>
   <td> checkbox with next item</td>
</g:each>

Я бы не хотел писать тег для этого, и опция скриптлета выглядит не очень хорошо.

Есть ли какой-нибудь грубый раствор?

Заранее спасибо

1 Ответ

3 голосов
/ 14 сентября 2010

Как насчет использования атрибута статуса:

<tr>
  <g:each status="i" in="${myList}" var="item">
    <g:if test="${ ( i > 0 ) && ( i % 2 == 0 ) }">
      </tr><tr>
    </g:if>
    <td><g:checkBox value="${dimension.id}" name="${item.id}"/> - ${item.name}</td>
  </g:each>
</tr>

Кроме этого, вы, вероятно, будете писать свой собственный тег grails.

Вы могли бы сделать что-то какэто, чтобы разделить ваш список на список пар данных, а затем вызвать каждый из них в этом многораздельном списке.

Все это, конечно, можно сделать в GSP, просто всегда аккуратно оборачивать эти вещи втег и держаться вне поля зрения.

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