java - example - struts2 maven
struts2: s: la casilla de verificación no va en la misma fila con s: casilla de verificación (5)
Debe examinar el tema que se está utilizando para la representación de su etiqueta de formulario. Struts2 usa un sistema de plantilla (definido en struts.properties). Parece que está utilizando la plantilla xhtml de forma predeterminada, que está diseñada para generar una tabla de dos columnas. Puede cambiar a simple en la aplicación o anularla en el nivel de etiqueta (o en otras cinco jerarquías intermedias).
Aquí hay más información: http://struts.apache.org/2.0.14/docs/themes-and-templates.html
Aquí está el código .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>
Cuando se represente, la casilla de verificación ocuparía toda una fila debajo de los ''nombres'', centrados. Aquí está el html generado para lo que se supone que es una sola fila:
<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>
¿Soy yo o struts? TIA.
El problema es que con el tema struts predeterminado, s:checkbox
es una celda de la tabla. (Struts 2 lo representa como una celda de tabla)
En su jsp lo incluye nuevamente en etiquetas <td>
(que no es necesario)
Intente eliminar las etiquetas <td>
alrededor de la etiqueta de casilla de verificación.
Agregue la propiedad theme = "simple" como
Struts2 presenta s: checkbox como una celda de tabla en sí misma. La razón es que struts2 usa un sistema de plantilla para la representación de etiquetas. El valor predeterminado es (como se define en struts-default.properties)
Tema estándar de interfaz de usuario
struts.ui.theme = xhtml
struts.ui.templateDir = plantilla
struts.ui.templateSuffix = ftl
Necesitas hacer este cambio - struts.ui.theme: simple
Se puede hacer agregando
constant name = "struts.ui.theme" value = "simple" /> etiqueta
en "struts.xml". Esto será suficiente.
Cuando defina su casilla de verificación, use el atributo "theme = simple" como se muestra a continuación:
El tema "simple" colocará su casilla de verificación en la misma fila que los otros campos de su. Aclamaciones.