0

ページにいくつかの HTML 要素があります。ページ コンテキストが無効化されて再レンダリングされるたびに、選択したオプションの視覚的な合図なしで要素が再レンダリングされます。

$('.select1 option:selected') を使用して選択を確認すると、選択されたオプションが返されます。ただし、選択したとおりにレンダリングされません。ドロップダウンの場合、最初の要素が表示されます。複数行の選択の場合、最初 (firefox) または最後の (chrome) 要素が表示され、選択行がグレー表示されます。

選択した要素をもう一度クリックすると、選択済みとして表示されます。

誰でもこれを修正する方法を知っていますか?

4

2 に答える 2

2

私はここで解決策を実装しました: 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());}
});

次に、レンダリング後の関数で選択した値を設定します。

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

ハッキーですが、動作します。

于 2012-10-22T14:16:12.113 に答える
0

おそらく、 $('.select1').trigger("change"); を使用できます。関数。

于 2012-10-22T13:24:21.733 に答える