该标签可以根据不同的条件处理不同的业务,也就是执行不同的程序代码。它和 Java 基础中if语句的功能一样。 标签有两种语法格式。
语法
语法格式一:
判断条件表达式,并将条件的判断结果保存在 var 属性指定的变量中,而这个变量存在于 scope 属性所指定范围中。
语法格式二:
标签体
不仅可以将 test 属性的判断结果保存在指定范围的变量中,而且可以根据条件的判断结果执行标签主体。标签主体可以是 JSP 页面能够使用的任何元素,例如 HTML 标记、Java 代码或者嵌入其他 JSP 标签。
参数说明:
标签各属性的详细介绍如表所示。
标签属性
属性
类型
描述
引用 EL
test
boolean
条件表达式:这是标签必须定义的属性
可以
var
String
指定变量名:这个属性会指定test属性的判断结果将存放在哪个变量中,如果该变量不存在,就创建它
不可以
scope
String
存储范围,该属性用于指定var属性所制定的变量的存在范围
不可以
示例
应用 标签判断用户名是否为 null,如果为空则显示一个用于输入用户名的文本框及“提交”按钮。
语法一:输出用户名是否为null
语法二:如果用户名为空,则输出一个用于输入用户名的文本框及“提交”按钮
请输入用户名:
运行本程序,当用户名为空时,将显示图所示的运行结果。
输入用户名后,单击“提交”按钮,运行结果如下:
语法一:输出用户名是否为 null
false
语法二:如果用户名为空,则输出一个用于输入用户名的文本框及“提交”按钮
典型应用
本示例应用 标签实现根据参数请求显示不同页面的功能。在页面中将根据 标签判断并显示不同的提示信息。
代码中的方法根据 action 参数的值来达到显示不同星期的提示信息。action 为 sun(周日)时,在 URL 地址栏添加表达式 "?action=sun" 为周日的提示信息。
把判断的条件写在 test 的属性中,为(param.action=='星期几?'),关键代码如下:
周一了:工作的第一天,要加油哦
周二了:工作两天了,要适当补充体力哦
周三了:忙碌的生活要学会调节
周四了:偶尔偷下懒儿,不算过分哦
周五了:加油明天就要休息了,HOHO
周六了:和死党们出去HAPPY吧
周日:要收敛一下活动,明个要上班呢
运行结果如下:
周二了:工作两天了,要适当补充体力哦