Grails:在下拉列表选项中使用session中的值

时间:2013-09-02 09:46:58

标签: grails gsp

在我的控制器中:

def billingDetails() {
    def traineeDetails = session.traineeDetais
    println "session data::"+traineeDetails 

    [traineeNames:traineeDetails.name]
}

打印:[numberOfTrainees:2, submit_trainee_details:Next: Billing Details ∩┐╜, phone:[999999, 99999], email:[tester1@test.com, tester2@test.com], name:[Jack, Rob], jobTitle:[SE, SE], action:processTraineeDetails, controller:trainingOrder]

现在在我的GSP中我希望有一个选择标签,其名称(jack,Rob)作为选项

  <g:select name="traineeName"
      from="${traineeNames}"
      value=""
      />

这不能正常工作..如何使这个工作,以便我将名称作为下拉列表中的选项

2 个答案:

答案 0 :(得分:0)

使用g:select

中的optionKey optionValue字段

参考: http://grails.org/doc/2.2.1/ref/Tags/select.html

并执行类似

的操作
<g:select optionKey="value" optionValue="value"
          name="traineeName" from="${traineeNames}" />

答案 1 :(得分:0)

我不知道确切的问题,但一个可能的原因是您的session.traineeDetais.name不是列表。检查天气session.traineeDetais.name是否是列表,如

println "Check: ${session.traineeDetais.name instanceof List}"

如果是list,则代码应该有效,如果是字符串,则下拉列表包含字符串字符作为值。