Das Anpassen eines Tags enthält hauptsächlich drei Schritte:
1. Schreiben Sie eine Java -Klasse und erben Sie die TagSupport -Klasse;
2. Erstellen Sie eine TLD -Datei und anspielend auf den Tag -Namen und die Tag -Java -Klasse.
3. Die JSP -Seite führt TLD vor.
Beispiel: Benutzerdefinierte Dropdown-Box-Etikett
Wenn auf der Seite ein Dropdown-Auswahlfeld vorhanden ist, besteht die beste Lösung in der Regel darin, ein Datenwörterbuch zu verwenden, da für mehrere Seiten Potenzial besteht
Verwenden Sie dieselbe Dropdown-Box, um eine einheitliche Wartung im Hintergrund zu erleichtern.
Benutzerdefinierte Tag -Klasse
importieren java.io.ioxception; import javax.servlet.jsp.jspexception; import javax.servlet.jsp.jspwriter; import Javax.servlet.jsp.tagext.TagSupport; Public Class DictionaryoptionTaget erweitert Tagsupport {private statische statische long Serialversionuid = 1 1L; // Feldindex, der Wert, der das Tag -Attribut auf der Seite @Suppresswarnings ("Unkontrolliert") @oversidepublic int doendTag () zurückgibt. . //Output} catch (IOException e) {e.printStackTrace();}return 0;}@Overridepublic int doStartTag() throws JspException {return 0;}public String getIndex() {return index;}public void setIndex(String index) {this.index = index;}}TLD definieren
<? 1.2 // en Ion> <JSP-Version> 1.2 </jsp-Version> <Kortname> Tagsample </Short-name> <Uri>/Hellotag </uri> <Tags> <!-- Schauen Sie sich eine Optionsliste aus dem Data Dictionary-> <Name> OptionDictionary </name> <Tag-Klasse> com.itmyhome Erforderlich-> <rtexprValue> Falsch </rtexprvalue> <!-ob er den Wert in $ {}-> </attribut> </taglib> übergeben kannEs ist zu beachten, dass: Wenn <rtexprValue> wahr </rtexprValue>, können Sie JSP -Ausdrücke verwenden
Der Attributwert, der angibt, dass das benutzerdefinierte Tag in $ {} dynamisch übergeben werden kann.
Verwenden Sie benutzerdefinierte Tags
<%@ taglib uri = "/webag/plattform.tld" prefix = "pf"%> <select> <pf: OptionDictionary Index = "Sex"/> </select>
Seitenausgabe:
Struts2 Tag-zwei Möglichkeiten zum Schreiben von Dropdown-Liste
Der erste Weg zum Schreiben
<s: set name = "sellist" value = "# {'1': 'quality', '2': 'cost', '3': 'progress'}"> </s: set> <s: select list = "# sellist" listkey = "key" listValue = "value" name "name"Die zweite Art des Schreibens:
<s: select name = "columnname" list = "{'quality', 'cost', 'progress'}" headerkey = "-1" headervalue = "-bitte auswählen-" leeroption = "true" multiple = "false"/>