通過使用 JSP taglib 指令,開發者就可以在頁面中使用這些基本標記或自定義的標記來完成特殊的功能。
語法:
<%@taglib uri="tagURI"prefix="tagPrefix"%>
引數說明:
-
uri:該屬性指定了 JSP 要在 web.xml 檔案中查詢的標籤庫描述符,該描述符是一個標籤描述檔案(*.tld)的對映。在 tld 標籤描述檔案中定義了該標籤庫中的各個標籤名稱,並為每個標籤指定一個標籤處理類。另外,通過 uri 屬性直接指定標籤描述檔案的路徑,而無需在 web.xml 檔案中進行設定,同樣可以使用指定的標記。
-
prefix:該屬性指定一個在頁面中使用由uri屬性指定的標籤庫的字首。字首命名不能為 jsp、jspx、java、javax、sun、servlet 和 sunw。
範例
開發者可通過字首來參照標籤庫中的標籤,關鍵程式碼如下:
<%@taglib uri="http://java.sun.com/jsp/jstl/core"prefix="c"%>
<c:set var="name"value="yxq"/>
上述程式碼通過 <c:set> 標籤將 "yxq" 值賦給變數 "name"。
典型應用
本範例主要是應用 taglib 指令引進 Struts2 的標籤庫,從而在頁面中引入 Struts2 中的標籤,實現頁面功能。下面就是一個應用 taglib 指令引進 Struts2 標籤庫實現的一個使用者註冊頁面.
本範例應用 taglib 指令引入 Struts 標籤庫,設定 prefix 屬性為 "s",uri 屬性為 "/struts-tags"。程式碼如下:
<body>
<h3>使用者註冊</h3>
<s:form>
<s:textfield name="username"label="姓名"></s:textfield>
<s:password name="password"label="密碼"></s:password>
<s:radio name="sex"label="性別"list="#{0:'男',1:'女'}"/>
<s:textfield name="age"label="年齡"></s:textfield>
<s:textfield name="grade"label="班級"></s:textfield>
<s:submit value="註冊"></s:submit>
</s:form>
</body>