1

row1を選択して強調表示してから、row2を選択して強調表示しています。row2を選択すると、row2のみがcssで強調表示され、row1がデフォルトになるか、row1の場合はcssが削除されます。助けてください

onSelectRow: function(id){
              var rowData = $(this).getRowData(id); 
              var memberId= rowData['memberId'];//replace name with any column

              if(id!==lastSel){ 


                 $(this).find('.ui-state-highlight').css({background:'#80BFFF'});
                 lastSel=id; 

                }

        }
4

1 に答える 1

4

「選択された」行のCSSを実際に変更しているようです。以前に選択した要素の「選択した」ハイライトを適切に削除するには、cssの変更も削除する必要があります。選択したクラスにハイライトカラーを配置し、それに基づいて追加/削除することをお勧めします。

CSS

.selected{
background-color:#80BFFF !important;
}

JS

onSelectRow: function(id){
          var rowData = $(this).getRowData(id); 
          var memberId= rowData['memberId'];//replace name with any column

          if(id!==lastSel){
             $(this).find(".selected").removeClass('selected');
             $('#results_table').jqGrid('resetSelection', lastSel, true);

             $(this).find('.ui-state-highlight').addClass('selected');
             lastSel=id; 

            }

    }
于 2013-01-10T21:49:16.850 に答える