时间:2021-05-20
自定义标签主要包括三个步骤:
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")@Overridepublic 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;}@Overridepublic 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 taglibPUBLIC "-//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"/>声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例为大家分享了JqueryEasyui自定义下拉框组件的实现代码,供大家参考,具体内容如下加载方式JS调用加载自定义下拉框不能通过标签的方式进行创建。$(
提供两种方式的分类树格式,表格和下拉框形式的树形结构可以自定义表格和下拉框的样式,自定义以哪一列的参数为格式化数据,自定义层级关系参数,自定义表格列名称,也可以
本文实例为大家分享了struts2自定义MVC框架的方法,供大家参考,具体内容如下自定义MVC:(首先了解Model1和Model2的概念)Model1与Mod
继续发一篇关于web前端自定义控件——ComboBox(下拉框),以往我在使用下拉框控件老是为了样式丑陋而烦恼,现在分享这个控件,希望有用的同仁们可以收藏,或进
有时我们需要一个可选的下拉框来选取内容,但是但是又有可以自定义输入的需求。对于这种需求,大部分网站使用的都是一个下拉框和一个inputtext,并列或分行给出选