【问题标题】:render same response to two select box from controller从控制器向两个选择框呈现相同的响应
【发布时间】:2012-03-18 02:15:47
【问题描述】:

我创建了级联选择如下-

<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 }" />   

现在我想渲染和填充列和列 2 都选择框 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")
        }

请帮忙。

谢谢

【问题讨论】:

  • 感谢阿利达的回复。你说得对,我想在第一个选择框更改时(一次)更新两个选择框。我可以在 update 中指定 column 和 column2 吗(如下) onchange="${remoteFunction(controller:'load', action:'getColumns', update:'columns', params:'\'tableCombo=\' + this. value')}"/> 我用的是模板的方式。
  • 我不认为你可以用“更新”更新多个元素。基于此 jira jira.grails.org/browse/GRAILS-4878。但是您可以编写一个 javascript 函数来根据响应更新元素。而不是从控制器呈现您的选择,而是在地图或 JSON 中返回所需的值,然后使用 javascript 呈现它们。

标签: jquery grails render gsp


【解决方案1】:

您似乎正在尝试根据第一个选择的值填充两个选择的值。我建议返回 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

希望对你有帮助

【讨论】:

  • 感谢阿里达。以上两个链接都在做我试过的同样的事情。我的问题是如何在调用远程函数后更新时传递两个选择框(一次)名称?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-06-04
  • 2011-07-25
  • 1970-01-01
相关资源
最近更新 更多