Grails选择标签名称id覆盖,怎么做?

时间:2011-03-31 11:09:11

标签: javascript jquery validation grails

我有一个grails select标签,其作为一个想法呈现的名称是bean的一个bean,因此名称的格式为“supplier.code”,我需要它的格式为“supplierCode”但是如果我更改名称以便影响id它将无法识别并保存bean中的值(当验证页面重新加载时没有选择的值)。我需要这样,以便我可以使用Jquery验证插件,它不接受“supplier.code”作为有效代码。

有没有办法覆盖如何在不中断bean保存的情况下给出id?是否有可能通过构建自定义标签?

<g:select name="supplier.code" from="${data.Vendor.list().sort{ it.description }}" optionKey="code" optionValue="description" value="${invoiceInstance?.supplier?.code}" default="none" noSelection="['':'-Choose-']" />

EDIT -----

我不确定自定义标记是否可行(单独使用),因为只要我更改id就不会保存bean。也许,我只需要将模板中的名称更改为“supplierCode”,然后在控制器级别获取存储在“supplierCode”中的值,然后将其作为supplier.code动态添加到bean中?我会尝试一下......

1 个答案:

答案 0 :(得分:0)

DOH!这很简单,

invoiceInstance.supplier = Vendor.findByCode(params['supplierCode'])

然后将名称更改为“supplierCode”