如何重置以前选定的行并在JQGrid中突出显示新行

时间:2013-01-10 21:41:41

标签: jquery jqgrid

我选择了一行并突出显示,然后选择第二行突出显示;当我选择row2时我只希望用css突出显示row2并且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; 

                }

        }

1 个答案:

答案 0 :(得分: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; 

            }

    }