在js或者jquery里面能使用el表达式吗

在js或者jquery里面能使用el表达式吗,第1张

不可以的,el表达式是jsp页面中使用的。不过在es6中,推出了一种模板字符串,可以通过``符号来创建一个字符串,在这个模板字符串中也可以使用el表达式。
比如:
var name = 'jack';
var str = `hello, ${name}`;
consolelog(str);
这时,就会打印出'hello,jack'。

看你的list的数据结构,就相当于是一个存放了n个map的list,你这里的业务需求就是要遍历出来所有的map。那你就要在后台把这个list传到页面去,setAttribute("positions",positions);
那你就在页面用forEach标签展示就可以了。
<c:forEach items="${positions}" var="car">
纬度:${carlatitude}<span/>
经度:${carlongitude}<span/>
<c:forEach/>
至于这个forEach放在什么地方,就按照你们业务的需求来了!
麻雀虽小,但也是肉啊!我收了!

el毕竟是服务器端的脚本,怎么可能和客户端脚本混用呢?
执行过程是服务器先解析了服务器端脚本后,结果返回到客户端,由浏览器执行返回的结果,这个两个步骤,不能混合搭配使用的。
我觉得有两种做法:
一种是你说的,用字符串,然后客户端拆分再 *** 作。
另一种是用el循环,输出的东西是客户端脚本的数组 *** 作
var aaa=new Array();
<c:forEach items="${reportName}" var="mm">
aaapush("${mm}");
</foreach>

然后 *** 作aaa
两种方法大同小异

不用这么麻烦吧:
<script type="text/javascript">
$(document)ready(function(){
for (var i=0;i<10;i++){
$('#' +i)click(function(){
$('c' +i)toggle();
});
}
});
</script>

首先纠正,js里不能使用EL表达式。EL表达式在服务器端执行,输出表达式结果到JSP页面。而js是在客户端执行的。 你的问题在于EL表达式是直接输出文本,并不知道上下文环境是HTML还是JS或是其他什么。这样就会导致输出的文本有时候语法不正确。

js是客户端执行,el是在服务端执行,而服务端比客户端先执行,所以你不能用js来改变已经执行的el表达式的值,但是却可以用el来给js初始化传值,这和jsp脚本是一样的效果,但是如果js脚本不是在jsp页面里而是在单独的js文件里,这时用el初始传值是不起作用的,但你可以通过windowonload()来得到el的值再传送给js文件里的方法进行变量初始化


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13341319.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-18
下一篇 2023-07-18

发表评论

登录后才能评论

评论列表(0条)

保存