Grails 圣杯<;g:if>;在<;g:选择>;

Grails 圣杯<;g:if>;在<;g:选择>;,grails,select,gsp,Grails,Select,Gsp,我把这个放在.gsp文件中。但与任何普通的不同的是,如果满足某个条件,此函数将具有属性disabled=“” 遵守守则: <g:select name="test" from="${["foo1","foo2"]}" <g:if test="${true}">disabled=""</g:if> /> 它返回此错误:属性值必须被引用。 这两条错误消息都属于异常,org.codehaus.groovy.grails.

我把这个
放在
.gsp
文件中。但与任何普通的
不同的是,如果满足某个条件,此函数将具有属性
disabled=“”

遵守守则:

<g:select name="test" 
          from="${["foo1","foo2"]}" 
          <g:if test="${true}">disabled=""</g:if> />
它返回此错误:
属性值必须被引用。

这两条错误消息都属于异常,
org.codehaus.groovy.grails.web.taglib.exceptions.grailstageexception


问题是我们如何才能使这项工作成功?如果不使用自定义标记库,是否有可能的答案?

无需使用println,请尝试此选项

<g:select .... ${(conditional)?"disabled":""} ... />

无需使用println,请尝试以下操作

<g:select .... ${(conditional)?"disabled":""} ... />

GSP表单字段标记将
disabled
视为布尔属性,因此您可以说

<g:select .... disabled="${true}" />

GSP表单字段标记将
disabled
视为布尔属性,因此您可以说

<g:select .... disabled="${true}" />
    <g:select disabled="${true}"...
    $(function() {

        $('form').on('submit', function() {
            $(this).find(':disabled').removeAttr('disabled');
        });

    });