распорки 2:s: checkbox не помещается в одну строку с s: checkbox

StackOverflow https://stackoverflow.com/questions/402302

  •  03-07-2019
  •  | 
  •  

Вопрос

Вот код .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.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top