【问题标题】:g select: how do I pull value from one list and displayed options from another?g select:如何从一个列表中提取值并从另一个列表中显示选项?
【发布时间】:2016-12-09 09:59:05
【问题描述】:

假设我有一个名为carNames 的数据库。我希望下拉列表显示每辆车的全名,而我希望每一个的值只显示每辆车的 ID。无论我做什么,它都会使值和显示的名称保持相同,并且根据我所做的所有更改,似乎只有 from 标记对下拉列表及其值有任何影响。代码如下:

<g:select name="carDropdown" 
  from="${carNames.carOfficialName}"
  value="${carNames*.carId}"
  optionValue="${carNames*.carId[]}"
  optionKey="${carNames*.carId[]}"
  multiple="true" />

【问题讨论】:

  • from 应该是一个包含列表的对象,键是列表元素的文本值,如 id 中的值,您希望看到的值是名称。看起来都错了

标签: java sql grails select gsp


【解决方案1】:

尝试在服务器端创建组合列表。

def cars = Car.findAll()
def carnames = magicCodeToGetCarNames()
def carnamemap = [:]
def cars_with_names = []
carnames.each {
 carnamemap[it.car_id] = it.carname
}
cars.each{
    cars_with_names << [
         id: it.id,
         carname: carnamemap[it.id],
         color: it.color,
         another: it.another,

    ]
}

然后将cars_with_names 传递给gsp 页面并使用它来填充下拉列表。

【讨论】:

    猜你喜欢
    • 2022-07-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-02
    • 1970-01-01
    • 2013-07-17
    • 1970-01-01
    • 2019-12-25
    相关资源
    最近更新 更多