JQuery替换一行中所有表单元格的css类属性

JQuery替换一行中所有表单元格的css类属性,jquery,Jquery,我试图设置表中给定行中所有单元格的class属性。这是我尝试过的,但虽然我没有得到异常,但它也不起作用 下面是行/单元格的当前html示例,如下所示 <tr id="rowid-1234"> <td class="tblistred">20-400 Silver Metal Closure</td> <td class="tblistred">Tecno, LLC</td>

我试图设置表中给定行中所有单元格的class属性。这是我尝试过的,但虽然我没有得到异常,但它也不起作用

下面是行/单元格的当前html示例,如下所示

    <tr id="rowid-1234">
        <td class="tblistred">20-400 Silver  Metal Closure</td>
        <td class="tblistred">Tecno, LLC</td>                          
        <td class="tblistred">Closure</td>
        <td class="tblistred">New Item</td>
    </tr>
更新 好的,我把它改成这个,但它仍然没有设置类

   alert($(rowId).find("td:first-child").text());
   $(rowId).children('td').addClass('tblist');
我添加了警报以确保我有正确的行,并且它确认我有

解决方案 我不得不删除已经存在的类

  $(rowId + ' td').removeClass('tblistred').addClass('tblist');

如代码突出显示所示,您的引号不匹配:

var rowID = '#row-' + response.id; // <-- see matching single quotes

var rowID='#row-'+response.id;// 您可以通过以下方式完成此操作:

$('#row-" + response.Id + " td").addClass('tblist');
那么:

$(rowID + ' td').addClass('tblist');

在添加类之前,我必须从td中删除现有类

   alert($(rowId).find("td:first-child").text());
   $(rowId).children('td').addClass('tblist');
我找到了答案

这就是我的结局

    $(rowId + ' td').removeClass('tblistred').addClass('tblist');

这种错误应该通过语法突出显示来捕获。记事本不是一个好的源代码编辑器。@Chad或StackOverflow上的代码预览…我正在使用Visual Studio,但我添加的变量声明只是在我发布问题时键入的。我已经编辑了这个问题。当你说“它不起作用”时,你确定这个类没有应用到你的
td
s吗?也许CSS没有达到你期望的效果。不,我在运行脚本后检查了td上的类。我应该指出,课程已经设置在td上,我正在尝试改变它。也许addClass不会替换现有的类?我试过这个,$(rowId).children('td').addClass('tblist');,但它不起作用。查看我的问题更新。这是@Doozer Blake建议的。我试过了,但也没用。事实上,你的问题是不准确的:你不仅仅是想在单元格中添加一个类。您想删除一个并用新的替换它。我很高兴它成功了:-)是的。我把所有的答案都投了赞成票,因为它们对我所问的问题都是正确的。但是,我想创建答案,以便其他人在这里可以清楚地看到解决方案。很好,但也请更新您的问题和答案,因为问题的一部分仅显示在您的答案中。。。