我创建了级联选择,如下所示 -
<td>Reference Table:</td>
<td><g:select name="tableCombo"
noSelection="${['':message(code:'Select Table')]}"
from="${result}" value="${tableName }" onchange="${remoteFunction(controller:'load',
action:'getColumns', update:'columns', params:'\'tableCombo=\' + this.value')}"/></td>
</tr>
<tr><td>Constraint On 1:</td>
<td><g:select name="columns" noSelection="${['':message(code:'Select Columns')]}" from="[]" /></td>
<td>Constraint Value :
</td>
<td><g:textField name="columnValue" value="${enterVal }" /> </td> </tr>
<tr><td>Constraint On 2:</td>
<td><g:select name="columns2" noSelection="${['':message(code:'Select Columns')]}" from="[]" /></td>
<td>Constraint Value :</td>
<td><g:textField name="columnValue" value="${enterVal }" />
现在我想渲染和填充列&amp; columns2都选择onchange tableCombo框。但不知道如何从控制器渲染两者。
def getColumns = {
def columns = GGWSchemaXref.executeQuery("select distinct p.columnname from GGWSchemaXref p where p.tablename=:table",[table:params.tableCombo])
render g.select(from:columns, name:"columns")
}
请帮助。
感谢
答案 0 :(得分:0)
您似乎正在尝试根据第一个选择的值填充两个选择的值。我建议返回一个JSON或渲染一个模板,包括一个模态地图,包括你的控制器的结果,并在你的视图上呈现它。 看看这两个问题:
how to populate 2nd Combobox(g:select) values on basis of 1st Combobox (g:select)
Grails: Load data on one ComboBox depending on another
希望这些有帮助