在Struts中使用UI标记(例如)时遇到问题。
我在表单(theme ='xhtml')
中使用默认主题案例1:========================================
使用时
<s:select label="FIELD1" ....../>
Struts2将生成html代码如下(我跳过非重要部分)
<table>
<tr>
<td>FIELD1:</td>
<td> <select ...... > </td>
</tr>
</table>
CASE2:=========================
使用时
<s:select label='' .....>
生成的html代码如下:
<table>
<tr>
<td>:</td>
<td> <select ...... > </td>
</tr>
</table>
在Struts2生成的html代码中,您仍会在表格的标签字段中看到冒号。
CASE3:========================== 使用时
<s:select .....>
如果我不使用label属性,Struts2会生成html代码如下:
<table>
<tr>
<td></td>
<td> <select ...... > </td>
</tr>
</table>
在Struts2生成的html代码中,您将看到标签文本已完成为空。
我希望的是,我设置属性lebel ='',并且Struts2生成的html代码中的标签文本为空(无冒号)。 我应该怎么做 ? 谢谢你的帮助。
答案 0 :(得分:1)
使用labelSeparator
属性清空字符串,您的要求将得到满足。有关<s:select>
的其他属性参考,请参阅该文档:
答案 1 :(得分:0)
这是由于您使用的xhtml
主题,并且基于Struts2标记为您生成HTML输出。
这里是用于生成HTML输出的Struts2免费标记模板中发生的事情。
${parameters.labelseparator?default(":")?html}<#t/>
所以当你没有labelseparator时会发生什么事情,它正在使用默认的分隔符,Struts2在内部使用:
因此,您应该按照labelSeparator
的说明提供James
,并且为了更好地控制输出,请根据您的选择使用简单主题和定义/设计页面。