1

在我的控制器中:

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=""
      />

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

4

2 回答 2

0

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

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

如果它是列表,那么您的代码应该可以工作,如果它是字符串,那么您的下拉列表包含字符串字符作为值。

于 2013-09-02T18:31:50.557 回答
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}" />
于 2013-09-02T12:24:27.633 回答