程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> Struts2 自界說下拉框Tag標簽

Struts2 自界說下拉框Tag標簽

編輯:關於JAVA

Struts2 自界說下拉框Tag標簽。本站提示廣大學習愛好者:(Struts2 自界說下拉框Tag標簽)文章只能為提供參考,不一定能成為您想要的結果。以下是Struts2 自界說下拉框Tag標簽正文


自界說標簽重要包含三個步調:

1、編寫java類,繼續TagSupport類;

2、創立tld文件,暗射標簽名和標簽的java類;

3、jsp頁面引入tld。

例子:自界說下拉框標簽

假如頁面上有下拉選擇框,平日最好的處理辦法是應用數據字典,由於有能夠多個頁面

應用統一個下拉框,便於後台同一保護。

自界說Tag類

import java.io.IOException;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.tagext.TagSupport;
public class DictionaryOptionTaget extends TagSupport {
private static final long serialVersionUID = 1L;
private String index; // 字段索引 ,頁面上經由過程標簽屬性傳回來的值
@SuppressWarnings("unchecked")
@Override
public int doEndTag() throws JspException {
JspWriter jspw = this.pageContext.getOut();
StringBuffer options = new StringBuffer();
/**
* 須要查詢數據庫 字段索引為SEX的option內容,這裡是寫逝世
*/
if ("SEX".equals(index)) {
options.append("<option value=''>-請選擇-</option>");
options.append("<option value='1'>男</option>");
options.append("<option value='0'>女</option>");
}
try {
jspw.println(options); //輸入
} catch (IOException e) {
e.printStackTrace();
}
return 0;
}
@Override
public int doStartTag() throws JspException {
return 0;
}
public String getIndex() {
return index;
}
public void setIndex(String index) {
this.index = index;
}
}

界說tld

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE taglib
PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"
"http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">
<taglib>
<tlib-version>1.0</tlib-version>
<jsp-version>1.2</jsp-version>
<short-name>tagSample</short-name>
<uri>/hellotag</uri>
<tag><!-- 從數據字典檢出一個option列表 -->
<name>OptionDictionary</name>
<tag-class>
com.itmyhome.DictionaryOptionTaget
</tag-class>
<body-content>empty</body-content>
<attribute>
<name>index</name><!-- 字段索引名 -->
<required>true</required><!-- 能否必填 -->
<rtexprvalue>false</rtexprvalue><!-- 能否可以或許以${}方法傳值 -->
</attribute>
</tag>
</taglib>

須要留意的是:<rtexprvalue>true</rtexprvalue> 時刻,可使用JSP表達式

表現該自界說標簽的屬性值可使用 ${} 方法靜態傳值。

應用自界說的標簽

<%@ taglib uri="/WEB-TAG/platForm.tld" prefix="PF"%> 
<select>
<PF:OptionDictionary index="SEX"/>
</select>

頁面輸入:

struts2標簽-下拉列表的兩種寫法

第一種寫法

<s:set name="selList" value="# {'1':'質量','2':'本錢','3':'進度'}"></s:set>
<s:select list="#selList" listKey="key" listValue="value" name="columnName" headerKey="0" headerValue="--請選擇--"></s:select>

第二種寫法:

<s:select name="columnName" list="{'質量','本錢','進度'}" headerKey="-1" headerValue="--請選擇--" emptyOption=" true" multiple="false"/>
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved