javascript - Grails:如何根据 GSP 表单中的选择显示数据源中的数据

标签 javascript grails gsp

我有一个从 MySQL 数据源生成的下拉菜单。

 <g:select onchange="selected()"  id="name" name="name" from="${listOfNames()}" noSelection="['':'--']"/>

这会使用我表格中的一列填充菜单

现在,根据选择,我想将同一表中的其他列显示为 gsp 表单上的文本。

因此用户从下拉列表中选择 Name1。我显示在下拉菜单下方

姓名1。 21岁。学位是的。

我的 Controller 中有一个名为 allDetails 的操作,它查询与名称关联的所有值并返回一个字符串。但我不知道如何传递参数

"${remoteFunction(action:'allDetails', params: \'name=\' params.name')}

最好的方法是什么?在 selected() 内运行 JavaScript 远程函数或以某种方式调用该操作的 gsp 标签?那么如何显示返回的字符串呢?更改innerHTML?

尝试过http://www.grails.org/AJAX-Driven+SELECTs+in+GSP

最佳答案

您不能使用remoteFunctionother core Grails tags ,因为它的文本是在页面渲染期间完全生成的,并且您只在 onchange 中执行 Javascript 时知道所选的名称。

所以使用jQuery Ajax call (除非您切换到不同的 Javascript 插件)。

我建议您不要选择姓名,而是选择该人的 id,例如第二个 g:select示例。

关于javascript - Grails:如何根据 GSP 表单中的选择显示数据源中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14822736/

相关文章:

JavaScript 求幂一元运算符设计决策

java - Google oauth2 api 客户端无法正常工作

grails - map 值未填充在 gsp 中

grails - 在Heroku压缩,gzip,过期标签中改进Grails应用

javascript - 将参数传递给 super 回调 URL Oauth2

javascript - 如何让 &lt;input type ="date"> 支持所有浏览器?还有其他选择吗?

javascript - 使用 lodash 从 Angular 8 的列表中删除重复的字符串(忽略大小写)

grails - Grails条件多个hasMans交集

grails - 在Grails 2.5.6中获取ClassNotFoundException

grails - 在特定语言环境中呈现单个GSP