jqgrid: как изменить класс одной ячейки (когда мышь включена)? - PullRequest
2 голосов
/ 21 мая 2010

Я устанавливаю ячейки первого столбца моей сетки следующим классом:

$("#myGrid").jqGrid('setCell',rowid,'column_1', '', '**ui-state-default**');

Как я могу изменить класс ячейки, когда мышь над ней?

Ответы [ 3 ]

4 голосов
/ 21 мая 2010

Как насчет этого?

$("#myGrid").hover(function(){
        $(this).find("td:first").css("background-color", "black");
    });

РЕДАКТИРОВАТЬ

 $("#myGrid tr").hover(
              function(){
              $(this).find("td:first").addClass('ui-state-hover');
              },
              function(){
              $(this).find("td:first").removeClass('ui-state-hover');
              }   
            );

ИЛИ

$("#myGrid tr").mouseenter(function(){
      $(this).find("td:first").addClass('ui-state-hover');
    }).mouseleave(function(){
      $(this).find("td:first").removeClass('ui-state-hover');
    });
0 голосов
/ 25 мая 2010

Вот мое последнее решение. Я буду использовать его следующим образом:

$("#mygrid tr").hover(
  function(){
      $(this).find("td").eq(1).removeClass('ui-state-default');
      $(this).addClass("ui-state-hover");
  },
  function(){
     if(!$(this).hasClass("ui-state-active"))
     $(this).find("td").eq(1).addClass('ui-state-default');
  }
);

$("#mygrid tr").click(function(){
  $("#mygrid tr").each(function() {
    $(this).find("td").eq(1).addClass('ui-state-default');
  });

  $(".ui-state-active").removeClass("ui-state-active");
  $(".ui-state-highlight").removeClass("ui-state-highlight");
  $(this).find("td").eq(1).removeClass('ui-state-default');
  $(this).addClass("ui-state-active");
});

Хорошо работает и для сетки внутри тегов ввода текста!

0 голосов
/ 21 мая 2010

Я решил это примерно так:

$("#myGrid tr").hover(function() { 
    $(this).find("td").eq(1).addClass('ui-state-hover');
});

$("#myGrid tr").mouseout(function() {
    $(this).find("td").eq(1).removeClass('ui-state-hover')
});

О чем ты думаешь?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...