【问题标题】:HTML Select loses selection when re-rendered in Meteor在 Meteor 中重新渲染时,HTML Select 会丢失选择
【发布时间】:2012-12-27 06:52:41
【问题描述】:

我在一个页面上有几个 HTML 元素。每当页面上下文无效并重新渲染时,元素都会重新渲染,而没有所选选项的视觉提示。

如果我使用 $('.select1 option:selected') 检查选择,则返回所选选项。但是,它不会呈现为选中状态。如果是下拉菜单,则显示第一个元素。如果是多行选择,则第一个 (firefox) 或最后一个 (chrome) 元素会显示为灰色的选择行。

如果我再次单击所选元素,它会显示为已选中。

有人知道如何解决这个问题吗?

【问题讨论】:

    标签: html select rendering meteor


    【解决方案1】:

    我在这里实现了解决方案:Meteor form state not being saved

    点击时将所选值存储在会话变量中:

    Template.packageViewer.events({
        'change .tagselect': function(){
            Session.set('tag', $('.tagselect :selected').html());}
        ,
        'change .groupselect': function(){
           Session.set('group', $('.groupselect :selected').html());}
        ,
        'change .packageselect': function(){
            Session.set('package', $('.packageselect :selected').val());}
    });
    

    然后在post-render函数中设置select selected值:

    Template.packageViewer.rendered = function(){
        $('.groupselect').val(Session.get('group'));
        $('.tagselect').val(Session.get('tag'));
    }
    

    Hacky,但有效。

    【讨论】:

      【解决方案2】:

      也许你可以使用 $('.select1').trigger("change");功能。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-07-15
        • 2013-06-10
        • 1970-01-01
        • 2023-01-13
        • 1970-01-01
        • 2012-01-20
        • 1970-01-01
        相关资源
        最近更新 更多