欢迎来到天天文库
浏览记录
ID:37852931
大小:330.50 KB
页数:13页
时间:2019-06-01
《JSTL标签学习》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、1.core标签库JSTL的Core标签库有如下用途:1.访问并修改内存中的数据;2.在页面上负责逻辑,进行决策;3.遍历数据。1.1标签标签的各个属性及其含义如下表所示,它的主要作用是在页面打印出指定的值。属性名描述是否必须默认值value待计算的JSTL表达式或者一个字符串常量是无defaultvalue属性计算失败时要计算的JSTL表达式或常量否无escapeXml是否对特殊字符进行转义,例如用&代替&否true当没有设置default属性的时候,JSTL会将标签体中的内容作为默认值。不能在指定了
2、default属性的同时还在标签体中置入内容,否则报错。1.2标签标签的作用是将一个值保存到指定的作用域中,这个值可以通过计算一个表达式得到,也可是标签体中的内容,它的各个属性及含义如下表所示:属性名描述是否必须默认值value待计算的JSTL表达式或者一个字符串常量否标签体var要保存变量的名称是无scope变量的作用域否pagevalue属性指定了变量的值,如果没有设置value属性,那么标签会将它的body中内容作为变量的值存储起来。同标签一样,如果指定了value属性,那么标签体中就不能
3、再置入内容。1.3标签和的作用相反,它从指定的作用域中删除某个指定的变量,它的属性如下表所示:属性名描述是否必须默认值var要删除的变量的名称是无scope要删除变量所在的作用域否page这里有一点值得注意,如果没有指定scope的值,那么标签会按照page->request->session->application的顺序,删除所有指定的变量。例如会将所有作用域中名字为name的变量删除。1.4标签标签的主要作
4、用是用于处理双向决策的条件逻辑,就是说条件要么为真要么为假,没有多个可能的选项。它的各个属性及含义如下表所示:属性名描述是否必须默认值test包含了一个待计算的条件是无var展示一个布尔值的属性的名称否无scope展示一个布尔值的属性的作用域否pagetest属性指定了一个条件或者布尔表达式,当这个表达式为true时,执行标签体,否则忽略标签体。属性var和scope的主要作用是帮助我们把条件表达式计算的结果保存起来,这样做是有好处的:对于某个要经常用到的条件,我们只需计算一次即可,而且可以让页面更加简洁,因为我们可以通过var来引用条件表达式的结果
5、。如下例所示:=18}”var=”isAdult”scope=”session”/>上面的代码在session中保存了一个名字为isAdult的布尔型变量,在这之后的任何时候我们想知道用户是否是成年人,只需写即可。特别是在条件表达式非常复杂的时候,这个功能尤其有用。1.5标签上述三个标签主要用于多个互斥条件下的决策,比如说3个条件C1,C2,C3,它们任何时候都只有一个为真。下面对这三个标签分别进行介绍。1.5
6、.1标签这个标签没有任何属性,它的作用仅仅就是用来容纳和标签,不在中的和标签没有任何意义。1.5.2标签标签的属性只有一个:test,如下表所示,属性名描述是否必须默认值test包含了一个待计算的条件是无标签和标签比较相似,通过对test属性进行判断来觉得标签体是否执行。它们之间最大的区别就是:对于处于同一个标签中的所有而言,它们之中
7、最多只有一个会被选中执行,当一个被选中后,所有其它的都会被忽略。1.5.3标签标签也很简单,它没有任何属性。当同一个中的所有都没执行时(即条件均为false)标签就会被选中执行。从otherwise的语义上也可以看出来是这个含义。1.5.4使用的一些规范●除了和标签体之外,中不能再包含任何直接的子元素,即使是普通的文本都不行。
8、●标签应该出现在所有的之后,不能出现在任何一个之前
此文档下载收益归作者所有