jsp中自定義標籤自動載入下拉框內容
第一步:在web專案下的web-inf的tlds目錄下,新建一個配置檔案,名字為relation.tld,內容如下:
自定義標籤的字首為relation(由short-name標籤決定),屬性有saveField(要儲存到資料庫的欄位名),value(要被選中的資料值),disField(作為顯示文字的欄位,相當select標籤的option之間的文字),tableName(下拉框要顯示的表的名稱),name(相當html標籤的name),id(相當html標籤的id),cssClass(相當html標籤的class),styleClass(相當html標籤的style),onChange(相當html標籤的onChange),
<?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>relation</short-name>
<uri>http://www.wang.com/relation</uri>
<tag>
<description>下拉框自定義標籤</description>
<name>select</name>
<tag-class>com.tag.RelationSelectTag</tag-class>
<body-content>JSP</body-content>
<attribute>
<name>saveField</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>value</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>disField</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>tableName</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>name</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>id</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>cssClass</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>styleClass</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>onChange</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>condition</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
</taglib>
第二步:新建標籤處理類,用來接收自定義標籤的屬性,和返回結果,內容如下: