找到所有元素,如果没有该类,添加其他类使用jQuery

时间:2013-12-18 06:41:58

标签: javascript jquery

var $trs = $("#task-list-tbody").find("tr");

$.each($trs, function(index, item){
  if(!item.hasClass("tGroup")){
    item.addClass("subgroup");
  }
});

这是失败的,我该怎么办?   我只想添加子组类,如果tr元素没有tGroup类

3 个答案:

答案 0 :(得分:4)

较短的版本

$("#task-list-tbody").find("tr:not(.tGroup)").addClass('subgroup');

答案 1 :(得分:1)

你的代码很痛苦

  

对象#<HTMLTableRowElement>没有方法'hasClass'

因此item$() 括起来,因为当您迭代trs时,会返回单个项目html <tr>..</tr>

最后,

$.each($trs, function(index, item){
  if(!$(item).hasClass("tGroup")){
        $(item).addClass("subgroup");
  }
});

答案 2 :(得分:0)

试试这个:

var $trs = $("#task-list-tbody").find("tr");

$trs.each(function(){
   if($(this).attr('class').indexOf('tGroup') == -1){
      $(this).addClass('subgroup');
   }
});