我正在使用 Grails select在我的 gsp 上标记。当我调用后端来填充这个人时,这些值以 JSON 数组的形式出现,就像这样..
[{"id":1,"display_name":"Sarah's Site"},
{"id":2,"display_name":"Gisele's Site"},
{"id":3,"display_name":"Mariam's Site"}
]
所以我基本上想将 id 列表输入到标签的 keys 属性中,并将 display_name 列表输入到 from 属性中。这样用户就可以看到显示名称的列表,当他们选择一个时,id 就会传回给 Controller 。
不知道该怎么做,这是我现在正在盯着的代码......
<g:select id="siteId" name="siteId" from="${siteNameList}" keys="${siteNameList}" noSelection="['':'Any']"/>
任何建议将不胜感激。
最佳答案
好的,我想通了。我从 JSON 数组(结果)中提取了两个列表,并将其传递给 GSP View ,如下所示。
def keys = [];
def values = []
results.each {
keys.add(it.get("id"))
values.add(it.get("display_name"))
}
render(view: "main", model:[siteNameKeys:keys, siteNameValues:values])
然后我只是将这些列表传递给 select 标记的 from 和 keys 属性。
<g:select id="siteId" name="siteId" from="${siteNameValues}" keys="${siteNameKeys}"
关于html - 从 JSON 数组读取到 Grails HTML Select 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31121194/