在jsp中用EL表达式如何获取下拉列表中的值

比如我有一个部门(section)下拉列表,有一个角色(roles)下拉列表,在页面中显示他们的属性,分别显示section的名字和roles中的编号,就是遍历一下,怎么办?谢谢

EL表达式
关键字: el表达式
一个EL表达式包含变量和操作符。任何存储在某个JSP作用范围(如:page、 request、session、application)的bean能被作为一个EL变量来使用。另外,EL支持以下预定义的变量:

变量名称
说明

pageScope
一个包含所有page scope范围的变量集合 (a java.util.Map)

requestScope
一个包含所有request scope范围的变量集合 (a java.util.Map)

sessionScope
一个包含所有session scope范围的变量集合 (a java.util.Map)

applicationScope
一个包含所有application scope范围的变量集合 (a java.util.Map)

param
一个包含所有请求参数的集合 (a java.util.Map),通过每个参数对应一个String值的方式赋值

paramValues
一个包含所有请求参数的集合 (a java.util.Map),通过每个参数对应一个String数组的方式赋值

header
一个包含所有请求的头信息的集合, (a java.util.Map) ,通过每个头信息对应一个String值的方式赋值

headerValues
一个包含所有请求的头信息的集合 (a java.util.Map) ,通过每个头信息的值都保存在一个String数组的方式赋值

cookie
一个包含所有请求的 cookie集合 (a java.util.Map), 通过每一个cookie(javax.servlet.http.Cookie)对应一个cookie值的方式赋值

initParam
一个包含所有应用程序初始化参数的集合(a java.util.Map) ,通过每个参数分别对应一个String值的方式赋值

pageContext
一个javax.servlet.jsp.PageContext类的实例, 用来提供访问不同的请求数据

操作符描述了你对变量所期望的操作。如果你之前曾经使用过任何编程语言的话,在EL表达式中所使用的操作符对你来说可能看起来很熟悉。因为它们和那些在大多数语言中所支持的操作符一样。

Operator
Description

.
访问一个bean属性或者 Map entry

[]
访问一个数组或者链表元素

()
对子表达式分组,用来改变赋值顺序

? :
条件语句,比如: 条件 ? ifTrue : ifFalse.如果条件为真,表达式值为前者,反之为后者

+
数学运算符,加操作

-
数学运算符,减操作或者对一个值取反

*
数学运算符,乘操作

/ or div
数学运算符,除操作

% or mod
数学运算符,模操作(取余)

== or eq
逻辑运算符,判断符号左右两端是否相等,如果相等返回true,否则返回false

!= or ne
逻辑运算符,判断符号左右两端是否不相等,如果不相等返回true,否则返回false

< or lt
逻辑运算符,判断符号左边是否小于右边,如果小于返回true,否则返回false

> or gt
逻辑运算符,判断符号左边是否大于右边,如果大于返回true,否则返回false

<= or le
逻辑运算符,判断符号左边是否小于或者等于右边,如果小于或者等于返回true,否则返回false

>= or ge
逻辑运算符,判断符号左边是否大于或者等于右边,如果大于或者等于返回true,否则返回false

&& or and
逻辑运算符,与操作赋。如果左右两边同为true返回true,否则返回false

|| or or
逻辑运算符,或操作赋。如果左右两边有任何一边为true返回true,否则返回false

! or not
逻辑运算符,非操作赋。如果对true取运算返回false,否则返回true

empty
用来对一个空变量值进行判断: null、一个空String、空数组、 空Map、没有条目的Collection集合

func(args)
调用方法, func是方法名,args是参数,可以没有,或者有一个、多个参数.参数间用逗号隔开

一个EL表达式可以包含:数字、文本(在单引号或者双引号之间)、布尔值、null值。

因为一个EL表达式可以出现在静态文本出现的地方,因此你必须告诉JSP容器它应该被当作一个EL表达式来处理。你可以通过使用定界符来做到这一点。一个EL表达式总是以”${ }”来标记(一个“$”符号和一个左花括号,右花括号)。

除了在这个方法中使用的length()方法,JSTL1.1标签库还包含了许多其它经常使用的函数:

函数
描述

fn:contains(string, substring)
如果参数string中包含参数substring,返回true

fn:containsIgnoreCase(string, substring)
如果参数string中包含参数substring(忽略大小写),返回true

fn:endsWith(string, suffix)
如果参数 string 以参数suffix结尾,返回true

fn:escapeXml(string)
将有特殊意义的XML (和HTML)转换为对应的XML character entity code,并返回

fn:indexOf(string, substring)
返回参数substring在参数string中第一次出现的位置

fn:join(array, separator)
将一个给定的数组array用给定的间隔符separator串在一起,组成一个新的字符串并返回。

fn:length(item)
返回参数item中包含元素的数量。参数Item类型是数组、collection或者String。如果是String类型,返回值是String中的字符数。

fn:replace(string, before, after)
返回一个String对象。用参数after字符串替换参数string中所有出现参数before字符串的地方,并返回替换后的结果

fn:split(string, separator)
返回一个数组,以参数separator 为分割符分割参数string,分割后的每一部分就是数组的一个元素

fn:startsWith(string, prefix)
如果参数string以参数prefix开头,返回true

fn:substring(string, begin, end)
返回参数string部分字符串, 从参数begin开始到参数end位置,包括end位置的字符

fn:substringAfter(string, substring)
返回参数substring在参数string中后面的那一部分字符串

fn:substringBefore(string, substring)
返回参数substring在参数string中前面的那一部分字符串

fn:toLowerCase(string)
将参数string所有的字符变为小写,并将其返回

fn:toUpperCase(string)
将参数string所有的字符变为大写,并将其返回

fn:trim(string)
去除参数string 首尾的空格,并将其返回
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-11-15
<select>
<c:forEach items=

jsp怎么用el表达式把值显示出来?
1、需要导入架包和引用核心标签库之后才能用forEach(先去网上下载架包)2、你的List应该是通过从Servlet类里查出来的 先放在session里:request.getSession.setAttribute("list",list)3、引号里的list是设置的后一个list集合的名字,用来在jsp页面中取出list集合进行遍历!4、forEach格式如下:<c:forEac...

jsp怎么用el表达式把值显示出来?
假如你返回的list是result\\x0d\\x0a\\x0d\\x0a${r.属性}\\x0d\\x0a

用el标签如何获取列表中的第一个元素?
例如:在jsp中获取 <%List<Order> orderList =(List<Order>)request.getAttribute("orderList");%><%=orderList.get(0).getOrderID()%>方法:可以用 ${ListData[0].属性}获取。EL表达式简介EL(Expression Language) 是为了使JSP写起来更加简单。表达式语言的灵感来自于 ECMAScript 和 XPath 表达...

JSP中el表达式的取值过程是怎样的?
如果要想在页面通过el表达式得到值就必需先调用域的setAttribute方法把值设置进去,不需要什么配置,直接写el表达式就可以如下代码 <% application.setAttribute("name", "zhangsan");\/\/Context域session.setAttribute("name", "lisi");\/\/session域request.setAttribute("name", "wangwu"); \/\/request域pageCo...

jsp中el表达式如何获取当前输入框的值?
function changeEvent(str){ form1.text1.value = "你选择的地点是:" + str;} <textarea name="text1" cols="50" rows="2" onselect="javascript:alert('你想复制么');"> <\/textarea> 请选择地点: <!--this是事件源对象的一个引用,即某个option--> 北京 上海 深圳 ...

jsp下拉列表框默认显示查询的一条数据
jsp下拉列表框默认显示查询的一条数据可以给select标签赋值,只取其中的一条数据即可。import java.util.ArrayList;import java.util.Iterator;public class Test{ ArrayList list;\/\/ constructor; builds some sample data.public Test(){ this.list = new ArrayList();this.list.add(new String[]{"1...

JSP页面里面获得了 文本框和下拉列表怎么样让他们的值显示在一个层里 ...
如果是同一个页面的话就要用脚本语言了;不是同一页面就釆用JSP表达式或EL表达式都可以 1.同一页面:… function settext(obj){ document.getElementById("divtext").innerText=obj.value;} \/\/文本框就不说了…2.不同页面:先把得到的值保存进作用域里面如request\/session…再通过作用域去拿;{reque...

JSP中EL表达式怎么取Set集合值
我也遇到你的问题了。自己研究了一下,el表达式可以操作部分对象的方法,可以用来解决这个问题。el表达式 {obj[index]}这种形式只能读取数组、List对象。不能读取Collection,因此可以使用Collection的toArray()方法后取第一个。注:Set对象是Collection子集,详见JDK源码。{collection.toArray()[0]} ...

java中jsp怎么获取地址栏上的参数
jsp获取地址栏上的参数有如下几种办法:1、使用jsp小脚本实现 < String value=request.getParameter("key");> 即可取出地址栏传递的key所代表的值 2、使用EL表达式实现 ${param.key} 也可以取出地址栏传递的key所代表的值 3、使用javascript实现 function GetQueryString(name){ var reg = new RegEx...

...在JSP页面上用EL表达式中如何取得该对象的属性值啊???
假如放到其中的属性名为OBJ,然后在页面上可以直接使用${OBJ}获取该对象,如果是List就遍历,是JavaBean就直接${OBJ.propertyName}取值。使用${OBJ}会默认取数据,从小到大先检查Request中,如果其中没有这个属性就找Session,还没有就找Application。但是一般不建议放到Session中,放到Request中比较好。

相似回答