【问题标题】:Grails g:select setting selectedIndexGrails g:选择设置 selectedIndex
【发布时间】:2010-02-04 01:04:07
【问题描述】:

如何使用列表中的值在

我尝试在闪存中传递新对象,但我不知道如何在用于生成 g:select 数据的列表中获取它的索引。

【问题讨论】:

    标签: list forms grails selectedindex


    【解决方案1】:

    假设您在控制器级别将 Book 对象存储在 flash.book 中,您的第二页可能如下所示:

    <html>
        <head>
            <g:javascript library="prototype" />
            <g:javascript>
                  function showLast(selectedId) {
                      if (selectedId) {
                        $$('#books option[value=' + selectedId + "]")[0].selected = true;
                      } else {
                        $('books').selectedIndex = 0;
                      }
                  };
    
                  Event.observe(window, 'load', init, false);
    
                  function init() {
                      showLast(${flash?.book?.id});
                  }
                </g:javascript>
        </head>
        <body>
            <g:select id="books" name="id"
                      from="${Book.list()}"
                      value="title"
                      optionValue="title"
                      optionKey="id"
             />
        </body>
    </html>
    

    【讨论】:

    • Awesome 完美运行,我使用 $('#fileSelect').val(${flash?.upload?.id}); 将它改编为 jQuery;
    • 酷。我只是想到了一些事情:如果您刷新页面,因为闪存范围,您将失去选择。 Maybie 最好在您第一次进入页面时将值存储在隐藏字段中并在随后的页面刷新时从那里读取...
    猜你喜欢
    • 2012-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多