这是一个样本grails g:选择要在gsp中呈现:
<g:select name="user.company.id"
from="${Company.list()}"
value="${user?.company.id}"
optionKey="id" />
HTML看起来像这样:
<select id="user.company.id" name="user.company.id">
<option value="1">ABC Company</option>
<option value="2">XYZ Company</option>
</select>
因此,公司域名的条目为:
ABC公司
XYZ公司
我正在尝试格式化每个选项的文本,因此用户会看到:
Some text - ABC Company:
Some text - XYZ Company:
如何格式化Company.list()的输出以包含文本中的前后文本?
答案 0 :(得分:3)
使用optionValue
。
<g:select name="user.company.id"
from="${Company.list()}"
value="${user?.company.id}"
optionKey="id"
optionValue="Some text - ${it.name}:" />
提供name
描述name
的{{1}}(理想情况下,如果您在公司中Company
实施了toString()
,则默认返回name
)
进一步阅读optionValue。