struts2中theme屬性包括xhtml,html,simple,ajax 。默認是xhtml
theme:設置struts2標籤的主題,預設為xhtml。 theme=xhtml時:會默認額外生成tr,td。 theme=simple時:就生成標籤所對應的html標籤形式。
在預設情況下,表單元素是分佈在不同行的。如下代碼:
<s:form action="login2"><s:textfield label="用戶名" name="username"/><s:password label="密碼"name="password"/><s:submit label="提交"/> </s:form>
我們看著以上的代碼跟HTML的差不了多少,但是因為struts2表單默認將表單內的每一個元素都分在單獨的一行,label屬性就如同我們在HTML 中在<input type="text"/>前面的文字標籤一樣。如果我們不想讓它自動換行,那就應該寫成如下格式:
<s:form action="login2" theme="simple"><s:textfield label="用戶名" name="username"/><s:password label="密碼 ”name="password"/><s:submit label="提交"/> </s:form>
但在設置theme="simple"後,表單元素的label屬性將失效,這時我們就得在表單元素前面加入想用label顯示的文字。如:
<s:form action="login2" theme="simple">用戶名:<s:textfield label="用戶名" name="username"/>密碼:<s:password label="密碼" name="password"/><s:submit label="提交"/> </s:form>
此時顯示的為將不在是label中的值,而是顯示文字方塊前面的文字,按鈕則顯示它原來的預設值:sbumit。