【问题标题】:Set select value in gsp在 gsp 中设置选择值
【发布时间】:2015-08-19 12:18:35
【问题描述】:

控制器:

     def abbrev = [:]
        abbrev.put(1,"I")
        abbrev.put(2,"II")
        abbrev.put(3,"III")
        abbrev.put(4,"IV")
        List<Expando> abbreviations = abbrev.collect{
          abbreviation -> Expando.newInstance(key:abbreviation.key,value:abbreviation.value)
        }

            def row = [:]
            def programRows = [ ]

    somelist.each {
              item -> row = [key1:value1, key2,value2 ]
                programRows << row
            }

[abbreviations:abbreviations, programRows:programRows ]

我遍历 programRows,所以我得到了一张地图 (programRow)。 地图 value1 相当于缩写中的一个键(Expandos 列表),所以我想基于此设置选择值:我评论了选项值,以便您了解我要分配的值。

查看 gsp:

    <g:each in="${programRows}" var="programRow">
   <g:select name="abbrevs" from="${abbreviations}" optionValue="//programRow.get('key1')//" optionKey="key" class="vfuCourseAbbreviations"/>

我该怎么做?

【问题讨论】:

    标签: grails gsp


    【解决方案1】:

    我会把你的代码写成这样:

    def someAction(){
      def abbreviations = [ 'I', 'II', 'III', 'IV' ]
      def programRows = somelist.collect {
        [ key1:value1, key2:value2 ] // as "value1" you have to pass the index in "abbreviations"
      }
      [ abbreviations:abbreviations, programRows:programRows ]
    }
    

    普惠制:

    <g:each in="${programRows}" var="programRow">     
      <select name="abbrevs">
        <g:each in="${abbreviations}" var="abbr" status="i">
          <option value="${i}" ${i == programRow.key1 ? 'selected' : ''}>${abbr}</option>
        </g:each>
      </select>     
    </g:each>
    

    【讨论】:

    • 我试过这个,我得到这个错误:没有方法签名:groovy.util.Expando.getAt() 适用于参数类型:(java.lang.Integer) 值:[1]。 . 1 等价于 key1
    • 根据您的代码,programRow 必须是 Map 的实例,而不是 Expando。检查它的类型
    • programRow 是 Map 的实例,“abbrevs”是 Expando 的列表
    • 抛出异常的代码与您在此处发布的代码完全相同吗?还是你“简化”了它?
    • 它的简化!但相同的结构和变量!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-01-14
    • 1970-01-01
    • 1970-01-01
    • 2013-05-11
    • 1970-01-01
    • 1970-01-01
    • 2020-12-14
    相关资源
    最近更新 更多