【发布时间】:2018-09-27 01:12:11
【问题描述】:
在我的.gsp 中,我有一个下拉选择选项。
<g:select id="id"
name="name"
disabled="${model.x == MyEnum.X}" //<--- note here
from="${MyEnum.values()}"
optionValue="naturalName"
noSelection="['': '']"
value="${model?.x}"/>
这部分生成的.html是这样的——
<select id="id" name="name" > //n <--- note here
<option value=""></option>
<option value="A" >A</option>
</select>
*注意:disabled 属性未生成!
但是如果我首先将 disabled 属性的逻辑和值放在变量中 -
<g:if test="${model.x == MyEnum.X}">
<g:set var="disabled" value="true"/>
</g:if>
然后,使用disabled 属性中的变量 -
<g:select id="id"
name="name"
disabled="${disabled}" //<------here
from="${MyEnum.values()}"
optionValue="naturalName"
noSelection="['': '']"
value="${model?.x}"/>
它按预期工作!我的意思是,在生成的.html 文件中生成disabled="disabled" -
<select id="id" name="name" disabled="disabled"> //n <--- here
<option value=""></option>
<option value="A" >A</option>
</select>
有人可以解释为什么.gsp 不能处理1'st 方法而是2'nd
我说不一致,因为在这两种方法上我都做了同样的boolean 检查,但.gsp 在第二种方法上工作正常。
仅供参考:我的 grails 版本是 2.4.4
【问题讨论】:
标签: grails drop-down-menu gsp disabled-input