java 获取jstl_java,js,jstl,EL的简单交互

EL全名Expression Language.EL提供了在JSP脚本编制元素范围外使用运行时表达式的功能。

脚本编制元素是指页面中能够用于在JSP文件中嵌入java代码的元素。

JSP标准标记库(jsp staandard tag library,jstl)是一个实现web应用程序常用功能的定制标记库集。有c标签。fmt标签,sql标签,xml标签,fn标签等.

EL表达式与jstl有何不同?

El表达式的出现主要是为了使jsp的使用更简单,减少java的代码,一般与jstl配合使用,但有时会出现一些疑问。

简单的说,EL是用来显示数据的,功能跟 一样,EL是不需要引入什么东西的,而jstl通常用一些逻辑控制,核心标签库常用的是if和forEach。

例如,有一个对象,User,User有个属性userName,

${sessionScope.user.userName},相当于

User user=(User) session.getAttribute("user");

out.print(usre.userName);

%>

上面是嵌套在jsp中的java代码。

有时候,我们需要跟js交互数据,

可以在js中这样写:

方法一:

var userName= "${user.userName}";//注意要有双引号

同时,我们要明白 jstl的标签会转化为服务器端的代码执行,而js代码则在客户端执行。

如果js代码在jsp文件中,这样写是可以的 ,但如果是放在引入的js文件,这样是不起作用的,因为EL表达式是在服务端执行的,服务端执行完成后再传给客户端的,js是在客户端执行的,el在js前就被执行了。

方法二:

有时候我们把需要引用的全局变量写在一个jsp中,使用java代码

把引入的外部js改为jsp文件,然后在jsp页面中引入

然后在jsp页面中引入myjs.jsp,

String url = "http://" + request.getServerName(); //服务器地址

}

%>

var url='';

或者

方法三:隐藏域

这个简单,

然后在js中直接获取id为text1的值就可以了。

方法四,ajax访问后台方法,request.getSession.getAttribute("user");

返回业务给js逻辑处理。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值