- <table align="center">
- <tr>
- <td>
- <s:textfield label="%{getText('username')}" name="username" size="20" cssClass="input01" theme="simple"/>
- </td>
- </tr>
- <tr>
- <td>
- <s:textfield label="%{getText('userpass')}" name="userpass" size="20" cssClass="input01"/>
- </td>
- </tr>
- </table>
这样的话,struts2框架会自动生成label以及一些提示信息,生成的html代码如下:
- <table align="center">
- <tr>
- <td>
- <input type="text" name="username" size="20" value="" id="_username" class="input01"/>
- </td>
- </tr>
- <tr>
- <td>
- <tr>
- <td class="tdLabel"><label for="_userpass" class="label">密码:</label></td>
- <td>
- <input type="text" name="userpass" size="20" value="" id="_userpass" class="input01"/>
- </td>
- </tr>
- </td>
- </tr>
- </table>
我们会发现有生成许多代价,有些时候还会生成错误提示信息的代码,可我不想要它啊,我想把它放到别的地方去,或者干脆说,我只想用Struts的action处理机制,不想用struts的默认布局,又或者你想做。。。。。。总之就不要默认的,怎么办?
这就涉及到struts2的theme(主题)了,换不同的主题,可以让struts的代码输出不同的html代码,你也就相应得到不同的布局效果,我就是这么理解theme的,并且换theme也非常简单,这样你可以设定N个不同的主题,每五分钟换一个都行啊(你喜欢的话)
问题一:Struts2有哪些主题?
Struts2提供了三种主题,ajax, simple, xhtml,它默认的是xhtml主题,当然你可以写任意个你自己的主题,我们称之为自定义主题
问题二:Struts2怎么改?
比如现在你想用simple主题,在Struts.xml中,加上下一行代码就可以了
<constant name="struts.ui.theme" value="simple" />
或者:在你的struts.propertise内加入以下:
struts.ui.theme=simple