+
 新版

jsp里面一行代码不懂

enjoyoschina 发布于 2016/08/03 10:29
阅读 560
收藏 0
JSP

<input  type="checkbox" id="rememberMe" name="rememberMe" ${rememberMe ? 'checked' : ''} class="ace" />

${rememberMe ? 'checked' : ''}谁能解释下这种用法及功能

加载中
1
zhengweihao
zhengweihao

${rememberMe ? 'checked' : ''}这个应该是freemarker或者类似的引擎语法吧,这段代码在后端生成html代码时运行

代码的意义实际上就是一个三元运算,rememberMe为true时值为checked,否则为空字符串,最终实现复选框是否为选中的初始状态。

1
Zemo
Zemo

我一直以为${}就是普通的jsp中el表达式...(当然, 一些模板引擎也会把起始符合终止符改为这样),然后里面就是正常的一个三木表达式,rememberMe应该是在session或者attribute中传过来的一个boolean值。

0
Aladin
Aladin
这是 Velocity模板语言,不是js, html的语法, 
0
jydang
jydang
用的什么模板解析,一般都可以查看源码,或者文档,都有答案的
0
Tumblr
Tumblr

${rememberMe ? 'checked' : ''}

这是某种模板引擎的语言,是服务端的语言。

同样的代码,如果使用ASP.NET MVC 的Razor模板引擎的写法是这样的:

<input  type="checkbox" id="rememberMe" name="rememberMe" @(rememberMe ? 'checked' : '') class="ace" />

0
酸奶瓶盖儿
酸奶瓶盖儿
不懂,看着有点像三元运算,是不是啊?
0
喂码呢
喂码呢
JSP EL表达式
0
子
子修
不就是三木判断是否为true吗
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部