Grails:你如何在GSP表达式中调用tagLib?

时间:2014-02-11 17:13:48

标签: grails grails-2.0 gsp taglib

所以我有这个tagLib;

def trimTo = { attrs, body ->
    int length = attrs.int('length')
    String text = body()
    if (text.size() > length) {
        text = text.substring(0, length - 1) + '...'
    }
    out << text
}

通常我会像这样使用它;

<g:trimTo length="50">${fieldValue(bean: fooInstance, field: "textEng")}</g:trimTo>

一切都很好。

但是我想用g:select标签来表示它;

<g:select name="phrases" from="${Foo.list()}" optionValue="${{it.textEng}}" multiple="multiple" optionKey="id" size="25" value="${fooParentInstance?.children*.id}" class="many-to-many"/>

具体来说,我想用它来缩短optionValue属性显示的内容,{it.textEng}的结果。

我尝试了几种不同的组合,似乎无法弄清楚正确的语法。

提前感谢您的任何帮助。

*编辑拼写

1 个答案:

答案 0 :(得分:1)

管理来计算它,主要是通过试验和错误,只需要一点点的阅读和推理就可以了。

optionValue="${{g.trimTo([length: 50], it.textEng)}}" 

全心全意,