Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/grails/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Grails控制器未获取控制器中下拉列表的当前值_Grails_User Interface_Groovy - Fatal编程技术网

Grails控制器未获取控制器中下拉列表的当前值

Grails控制器未获取控制器中下拉列表的当前值,grails,user-interface,groovy,Grails,User Interface,Groovy,我在视图中有一个下拉列表g:select,它显示域类的列表。每当单击save按钮时,我想打印其中的任何值。下面是视图中的脚本 <g:select params="[tablename: storehouseInstance?.tablename]" name="tablename" from="${Warehouse.list()}" optionKey="id" optionValue="${Warehouse.list()}" value="tablename" noSelec

我在视图中有一个下拉列表g:select,它显示域类的列表。每当单击save按钮时,我想打印其中的任何值。下面是视图中的脚本

<g:select params="[tablename: storehouseInstance?.tablename]" name="tablename"     from="${Warehouse.list()}" optionKey="id" optionValue="${Warehouse.list()}" value="tablename"
noSelection="['':'Choose Table']"
onchange="${remoteFunction (
controller: 'warehouse',
action: 'updateSelect',
params:  "'warehouse.id=' + this.value + storehouseInstance?.tablename" ,
param: "this.value",
update: [success:'fieldSelection'] //update: 'fieldselection'
)}"/>
我将tablename设置为“1”,而不是类似于“MYTESTVALUE”的值


请提供任何帮助。

假设仓库的name属性为name,请尝试以下操作:

<g:select params="[tablename: storehouseInstance?.tablename]" 
    name="tablename"     
    from="${Warehouse.list()}" 
    optionKey="name"     // I changed this line
    optionValue="name"   // I changed this line too
    value="tablename"
    noSelection="['':'Choose Table']"
    onchange="${remoteFunction (
        controller: 'warehouse',
        action: 'updateSelect',
        params:  "'warehouse.id=' + this.value + storehouseInstance?.tablename" ,
        param: "this.value",
        update: [success:'fieldSelection']
)}"/>
在g中:选择发送到服务器的参数由optionKey定义,下拉列表中显示的值由optionValue定义

在一边 从MVC的角度来看,您不应该在GSP中进行查询,例如Warehouse.list。相反,您应该在服务/控制器中检索所需的数据,并通过模型将其传递给视图GSP

<g:select params="[tablename: storehouseInstance?.tablename]" 
    name="tablename"     
    from="${Warehouse.list()}" 
    optionKey="name"     // I changed this line
    optionValue="name"   // I changed this line too
    value="tablename"
    noSelection="['':'Choose Table']"
    onchange="${remoteFunction (
        controller: 'warehouse',
        action: 'updateSelect',
        params:  "'warehouse.id=' + this.value + storehouseInstance?.tablename" ,
        param: "this.value",
        update: [success:'fieldSelection']
)}"/>