<input type="checkbox" id="rememberMe" name="rememberMe" ${rememberMe ? 'checked' : ''} class="ace" />
${rememberMe ? 'checked' : ''}谁能解释下这种用法及功能
<input type="checkbox" id="rememberMe" name="rememberMe" ${rememberMe ? 'checked' : ''} class="ace" />
${rememberMe ? 'checked' : ''}谁能解释下这种用法及功能
${rememberMe ? 'checked' : ''}这个应该是freemarker或者类似的引擎语法吧,这段代码在后端生成html代码时运行
代码的意义实际上就是一个三元运算,rememberMe为true时值为checked,否则为空字符串,最终实现复选框是否为选中的初始状态。
我一直以为${}就是普通的jsp中el表达式...(当然, 一些模板引擎也会把起始符合终止符改为这样),然后里面就是正常的一个三木表达式,rememberMe应该是在session或者attribute中传过来的一个boolean值。
${rememberMe ? 'checked' : ''}
这是某种模板引擎的语言,是服务端的语言。
同样的代码,如果使用ASP.NET MVC 的Razor模板引擎的写法是这样的:
<input type="checkbox" id="rememberMe" name="rememberMe" @(rememberMe ? 'checked' : '') class="ace" />