JSP动态网站开发与实例(第3版) 教学课件 作者 17.ppt
文本预览下载声明
关于自定义标签 标签文件的重要指令 attribute指令与标签参数 将参数传入所设计的标签,必须设定attribute指令 。 %@attribute name=paraname required=true/false % name代表参数名称,paraname在标签文件中被用来代表这个参数的变量 。 required则表示此参数值是否为必要,若设为true ,在网页当中引用标签的时候,必须传入此参数,若为false,则此代表其为非必要参数 。 一旦设定了attribute,用户便可以在标签文件中利用EL语法运用这些参数值 。 ${paraname} 在引用标签的JSP网页当中,如果要将指定的参数值传入标签,只需要在引用标签的时候,通过参数名称作设定即可 : mytag:theTag paraname=attributevalue / variable指令与标签返回值 标签指令variable,该指令的用途在于设定标签返回值 。 @variable name-given=returnName % variable指令当中的name-given代表此标签的返回值变量 引用标签的网页通过此变量可直接取得其返回的内容 动态属性 动态参数是由指令tag的dynamic-attributes属性来设定,该属性值 代表引用标签的网页所传入之不定数目的参数集合 : %@tag dynamic-attributes=dynatt % dynatt包含了所有传入标签的参数,它是一个Map类型的集合对象,其中的元素以键(key)/值(value)成对储存 。 利用map.key来取得代表参数名称的键值,而map.value则用来 取得参数本身所对应的值 。 Fragment属性 自定义标签接受一整段的程序片段作为参数内容。如果要设定这种类型的参数,必须将attribute指令的属性值设为true 。 %@attribute name=attributeName fragment=true % 在JSP网页当中,将一整段的程序片段当作参数传入,属性必须使用jsp:attribute标签作设定 。 mytag:frgmenttag jsp:attribute name=attributeName … /jsp:attribute /mytag:fragattributes jsp:attribute指定name属性为所要传入的的参数名称 。 jsp:attribute标签当中,填入的则是要传入自定义标签的内容 。 引用自定义标签 在自定义标签内容当中,如果想要引用其本身fragment被设为 true的参数,则必须通过jsp:invoke,并且指定其fragment属性 。 jsp:invoke fragment=attributeName / *JSP 动态网页新技术 第17章 自定义标签 JSP提供了自定义标签的机制,让设计人员可以自行建立自已的标签,并且在网页上直接使用,这种弹性的设计让JSP的标签功能可以无限的延伸 。 新版的JSP简化了自定义标签的设计,用户甚至不用通过Java就可以直接制作标签,接下来的内容将直接来看看如何通过这些机制进行标签的制作 。 指 令 说 明 tag 设定整个标签文件的内容 taglib 同JSP网页taglib指令,使用于标签文件 include 同JSP网页include指令,使用于标签文件 attribute 设定标签的参数 variable 设定标签的返回值 *JSP 动态网页新技术 第17章 自定义标签
显示全部