Session中的使用

//java代码将对象存入session
httpSession.setAttribute("CURR_USER",userinfoList.get(0));
//jsp中使用session中的对象
${sessionScope.CURR_USER.username}

JS中使用EL表达式

var str = '${str}' ;
var str = '${obj.属性名}';
只可以再jsp页面的<script></script>中使用,外部引入的js文件中不能使用。
但是事实情况呢有时候需要在某些插件中js使用,如果是开发时候可以用传参数之类,用隐藏域之类的. 当开发完毕的时候(比如项目分离),之前js文件中写死的配置就会出问题,为了简单可以使用这个方法支持EL表达式
将.js文件改为.jsp,这样可以让容器解析里面的el表达式
然后引用再用 <script src="/${appName}/commons/jq22.jsp"></script> 告诉引入的文件是个script. 但是把.js文件改成.jsp的话,长时间以后下一个维护人员会很困惑这是什么东东,所以可以采用这个方法
在一个公用的外部.js文件中配置一个全局变量.在插件中的.js文件中使用这个全局变量(当然.jsp文件要同时引入这两个文件)

EL与JSTL标签联用

引用

jsp文件引入

JSTL 1.0 声明:
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
JSTL 1.1 之后声明:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

c标签

使用c:标签

<!-- 设置值 -->
<c:set var="salary" scope="session" value="${2000*2}"/> <!-- if语句 -->
<c:if test="${salary > 2000}">
<p>工资: <c:out value="${salary}"/><p>
</c:if> <!-- choose语句 -->
<c:choose>
<c:when test="${salary <= 0}">
太惨了。
</c:when>
<c:when test="${salary > 1000}">
不错的薪水,还能生活。
</c:when>
<c:otherwise>
啥都没有。
</c:otherwise>
</c:choose>

if标签判断为空

<c:if test="${!empty user.name}">user的name属性不为空时显示</c:if>

<c:forEach>标签

集合中的对象

<c:forEach  items="${sessionScope.userList}"  var="userItem"  varStatus="userStatus">
${userItem.键名}
</c:forEach>

c:forTokens标签

<c:forTokens>标签通过指定分隔符将字符串分隔为一个数组然后迭代它们

<c:forTokens items="google,baidu,biying" delims="," var="engine">
<c:out value="${engine}"/><p>
</c:forTokens>

JSTL提供format标签

el表达式直接显示日期格式化问题.

<!--1.首先引入标签库-->
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<!--2.在需要显示日期的地方调用fmt标签即可-->
<fmt:formatDate value="${order.submit_time}" pattern="yyyy-MM-dd HH:mm:ss"/>

js文件中使用EL表达式的问题的更多相关文章

  1. js文件中使用el表达式问题

    作者:Sang 单独js文件不能用el表达式. 首先,JSP是由服务端执行的,EL表达式自然也由服务端解析执行,因此如果EL所在的脚本在JSP页面内,它是可以获取到值的,这个值在服务器端返回到浏览器端 ...

  2. 在js文件中写el表达式取不到值的原因及解决方法

    1.javascript是客户端执行,EL是在服务端执行,而服务端比客户端先执行,所以取不到值 2.要想获取"${jcDropClass.jcClass.id}"的值,可以在jsp ...

  3. 独立的js文件中不能使用EL表达式取值

    在独立的js文件中写了一个EL表达式取值,发现没有取到值,原因在于不能在独立的js文件中使用EL表达式,可以在jsp页面定义全局变量,然后在js文件中引用

  4. js中“使用”el表达式

    在说相关内容前,一定要先熟悉jsp运行原理: http://blog.csdn.net/lmsnju/article/details/4813488 http://hi.baidu.com/mingf ...

  5. js文件中如何使用 获取EL表达式的值

    转: js文件中如何使用 获取EL表达式的值 原先做法是在jsp页面引入头文件 <%@ page language="java" pageEncoding="UTF ...

  6. JS中使用EL表达式

    转自:http://blog.csdn.net/monkeyking1987/article/details/17146951 分两种情况 1. JS代码在JSP页面中, 这可以直接使用EL表达式. ...

  7. JS中使用EL表达式方法与获取工程名字

    关键: 在js中使用el表达式一定要使用双引号      分两种情况 1. JS代码在JSP页面中, 这可以直接使用EL表达式. 如: <script type="text/javas ...

  8. js 中使用el表达式 关键总结:在js中使用el表达式一定要使用双引号

    js 中使用el表达式 关键总结:在js中使用el表达式一定要加双引号 js控制中用到了el表达式,最开始源码如下: var selected = ${requestScope.xxxxForm.re ...

  9. 转:el表达式获取map对象的内容 & js中使用el表达式 & js 中使用jstl 实现 session.removeattribute

    原文链接: ①EL表达式取Map,List值的总结 ②在jsp中使用el表达式通过键获得后台的一个map<Long,String>的值 ③在javascript中使用el表达式(有图有真相 ...

随机推荐

  1. 201521123079《java程序设计》第10周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常与多线程相关内容. 1.实现多线程的方式: 方式一:继承Thread类 a.自定义类继承Thread类 b.在自定义类中重写ru ...

  2. SSH复用代码最终版

    web.xml文件 <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="h ...

  3. 关于IOS的屏幕适配(iPhone)——Auto Layout和Size Classes

    Auto Layout和Size Classes搭配使用极大的方便了开发者,具体如何使用Auto Layout和Size Classes大家可以参考其他文章或者书籍,这里只提一点,在我们设置Size ...

  4. oracle存储过程中is和as区别

    在存储过程(PROCEDURE)和函数(FUNCTION)中没有区别:在视图(VIEW)中只能用AS不能用IS:在游标(CURSOR)中只能用IS不能用AS.

  5. linux kill 命令

    kill 命令的用途 kill 命令很容易让人产生误解,以为它仅仅就是用来杀死进程的.我们来看一下 man page 对它的解释:kill - send a signal to a process. ...

  6. 进入css3动画世界(一)

    其实我做css3动画也没有多久,这篇文章目标人群是css3动画的新手,不喜勿喷. 分类 目前我接触到的css3动画有2类:一种是transition的,另一种是@keyframes的. 两者的区别就是 ...

  7. C++运算符优先级 案例1

    问: ... short nReaderCount=10              ++pLock->nReaderCount==? ...++和->同为1级优先级,我想很多也有很多新手弄 ...

  8. 笨鸟先飞之ASP.NET MVC系列之过滤器(01过滤器简介)

    过滤器 什么是过滤器? 过滤器(Filter) 主要的作用大致可以理解为把我们的附加逻辑注入到MVC框架的请求处理. 在ASP.NET MVC的请求处理中一种有19个管道事件分别是 BeginRequ ...

  9. Digital Square 搜索

    Digital Square Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Subm ...

  10. bzoj2111 Perm 排列计数

    称一个1,2,...,N的排列P1,P2...,Pn是Magic的,当且仅当2<=i<=N时,Pi>Pi/2. 计算1,2,...N的排列中有多少是Magic的,答案可能很大,只能输 ...