распорки 2:s: checkbox не помещается в одну строку с s: checkbox
Вопрос
Вот код .jsp:
<table>
<s:iterator value="allAgents">
<tr>
<td><s:property value="firstName" /></td>
<td><s:property value="middleName" /></td>
<td><s:property value="lastName" /></td>
<td><s:checkbox name="ss"/></td>
</tr>
</s:iterator>
</table>
При рендеринге флажок будет занимать целую строку под "именами", по центру.Вот сгенерированный html-код для того, что должно быть одной строкой:
<tr>
<td>first</td>
<td>middle</td>
<td>last</td>
<td>
<tr>
<td valign="top" align="right"></td>
<td valign="top" align="left"><input type="checkbox" name="ss"
value="true" id="agent_ss" /> <input type="hidden"
name="__checkbox_ss" value="true" /></td>
</tr>
</td>
</tr>
Это я или распорки?ТИА.
Решение
Добавьте свойство theme="простой" Нравится
Другие советы
Struts2 отображает s: checkbox как саму ячейку таблицы.Причина в том, что struts2 использует систему шаблонов для отображения тегов.Значение по умолчанию равно (как определено в struts-default.properties)
Стандартная тема пользовательского интерфейса
struts.ui.theme=xhtml
struts.ui.templateDir=шаблон
struts.ui.templateSuffix=сверхсветовой
Вам нужно внести это изменение -- struts.ui.theme: простой
Это можно сделать, добавив
имя константы="struts.ui.theme" значение="простой" /> тег
в "struts.xml".Этот Wil достаточно.
Вам нужно ознакомиться с темой, которая используется для рендеринга тега вашей формы.Struts2 использует систему шаблонов (определенную в struts.properties).Похоже, что вы используете шаблон xhtml по умолчанию, который предназначен для вывода таблицы из двух столбцов.Вы можете использовать значение simple по умолчанию в приложении или переопределить его на уровне тегов (или пяти других промежуточных иерархий).
Вот еще немного информации: http://struts.apache.org/2.0.14/docs/themes-and-templates.html
При определении вашего флажка используйте атрибут "theme = simple", как показано ниже:
Тема "simple" поместит ваш флажок в ту же строку, что и другие ваши поля.Ваше здоровье.
Проблема в том, что с темой struts по умолчанию, s:checkbox
является самой ячейкой таблицы.(Struts 2 отображает его в виде ячейки таблицы)
В вашем jsp вы включаете это в <td>
снова теги (которые не нужны)
Попробуйте удалить <td>
теги вокруг тега checkbox.