【问题标题】:grails render a list in select after ajax call by remote functiongrails在远程函数调用ajax后在select中呈现一个列表
【发布时间】:2014-07-24 23:30:01
【问题描述】:

我正在使用 grails 2.1.1。我有一个选择框,在更改时我通过 remothFunction 调用一个操作来更新另一个选择。该列表正在控制器中填充,但未在所需的选择框中呈现。有人可以帮我吗?以下是我的代码:

我的视图页面有两个选择和远程功能>>>

 <html>
<head>
    <title>Render District & Thana</title>

    <g:javascript plugin="jquery" library="jquery" src="jquery/jquery-1.8.0.js" />

    <script>
        function loadThana(districtId) {
            <g:remoteFunction controller="greeting" action="loadThanaByDistrict" update="thanaId" params="'districtId='+districtId"/>
        }
    </script>

</head>

<body>
<g:form controller="greeting" action="renderDistrictThana">
   Select District : <g:select
            name="districtId"
            id="districtId"
            from="${district}"
            optionKey="id"
            optionValue="districtName"
            noSelection="['null':'Select District']"
            onchange="loadThana(this.value)"/><br/>


   Select Thana : <g:select
            name="thanaId"
            id="thanaId"
            from="${thana}"
            optionKey="id"
            optionValue="thanaName"
            noSelection="['null':'Select Thana']"/><br/>

    <g:submitButton name="submit" id="submit" value="Render Distric & Thana"/>
</g:form>
</body>
</html>

我在第二个组合中呈现列表的操作 >>>

def loadThanaByDistrict() {
    def district = District.get(params.districtId?.toLong())
    def thana = Thana.findAllByDistrict(district)

    render thana
}

【问题讨论】:

    标签: grails grails-2.0


    【解决方案1】:

    您的控制器可能如下所示,

    def loadThanaByDistrict(){
        def district = District.get(params.districtId?.toLong())
        def thana = Thana.createCriteria().list{eq('district',district)}
        String options
        thana.each{ options += "<option value='"+[replace it with your expected field]+"'>"+[replace it with your expected field]+"</option>"
        render options
    }
    

    希望一切顺利。

    【讨论】:

    • 它工作正常。但是有什么办法可以在组合thanaId中加载列表而不是覆盖它???!!!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-07
    相关资源
    最近更新 更多