在javascript中突出显示我的表的某些行

在javascript中突出显示我的表的某些行,javascript,jquery,Javascript,Jquery,我需要突出显示表中的一些行。此突出显示基于my response对象中的行。该对象可以如下所示: <table id="ListRequests" class="table table-striped"> <tbody> <tr id="13955"> <td>JEAN DUPONT</td> <td>ACLIME

我需要突出显示表中的一些行。此突出显示基于my response对象中的行。该对象可以如下所示:

<table id="ListRequests" class="table table-striped">    
    <tbody>
        <tr id="13955">
            <td>JEAN DUPONT</td>                
            <td>ACLIMEX SPRL</td>
        </tr>
    </tbody>
</table>
只有当我的响应对象只包含一行时,这才可以正常工作。现在,我需要能够一次高亮显示多行。例如,对于下面的响应对象:

<table id="ListRequests" class="table table-striped">    
    <tbody>
        <tr id="13955">
            <td>JEAN DUPONT</td>                
            <td>ACLIMEX SPRL</td>
        </tr>
        <tr id="13954">
            <td>MIKE GIVER</td>                
            <td>ARGO INTERNATIONAL CORP</td>
        </tr>
    </tbody>
</table>

你知道如何调整我的javascript代码来达到这个目的吗?

如果你真的想用你现在的方式来做,那么你需要使用每一种方式

var trs = $("tbody tr", response);
trs.each( function () {
    var id = this.id,
        cols = $('#' + id + ' td');
    cols.effect("highlight", {}, 30000);
});

最好返回一个带有ID的JSON对象进行选择。

如果你真的想用你现在的方式来做,那么你需要使用每一个ID

var trs = $("tbody tr", response);
trs.each( function () {
    var id = this.id,
        cols = $('#' + id + ' td');
    cols.effect("highlight", {}, 30000);
});

最好返回一个带有ID的JSON对象以供选择。

这里是一个工作片段

其思想是通过循环tr节点从您得到的响应中删除id,从这些id为您感兴趣的节点构建css选择器,并最终高亮显示所有节点

功能强光响应{ //从响应中检索ID 变量ID=$response.findtbody tr.mapfunction{ //‘this’将是一个接一个的trs。 //`map`将把所有返回的值放在一个数组中。 返回此.getAttributeid; }.获得; //构建css选择器 var选择器=+ids.join,; //突出显示相应的节点 $selector.effecthighlight,{},30000; } //使用您的响应示例调用highlight。 重点介绍“JEAN DUPONTACLIMEX SPRLMIKE Giverago国际公司”; 让·杜邦 ACLIMEX SPRL 迈克·吉弗 阿尔戈国际公司 另一个 不能突出显示
下面是一个工作片段

其思想是通过循环tr节点从您得到的响应中删除id,从这些id为您感兴趣的节点构建css选择器,并最终高亮显示所有节点

功能强光响应{ //从响应中检索ID 变量ID=$response.findtbody tr.mapfunction{ //‘this’将是一个接一个的trs。 //`map`将把所有返回的值放在一个数组中。 返回此.getAttributeid; }.获得; //构建css选择器 var选择器=+ids.join,; //突出显示相应的节点 $selector.effecthighlight,{},30000; } //使用您的响应示例调用highlight。 重点介绍“JEAN DUPONTACLIMEX SPRLMIKE Giverago国际公司”; 让·杜邦 ACLIMEX SPRL 迈克·吉弗 阿尔戈国际公司 另一个 不能突出显示 attr返回一个值,而不管有多少个元素与正在进行的选择器匹配

如果要将每个选定元素映射到ID和返回数组,则需要映射:

一旦有了ID列表,就可以迭代该列表,并突出显示DOM中匹配的行:

ids.forEach(function (id) {
  var cols = $('#' + id + ' td');
  cols.effect("highlight", {}, 30000);
}); 
attr返回一个值,而不管有多少个元素与正在进行的选择器匹配

如果要将每个选定元素映射到ID和返回数组,则需要映射:

一旦有了ID列表,就可以迭代该列表,并突出显示DOM中匹配的行:

ids.forEach(function (id) {
  var cols = $('#' + id + ' td');
  cols.effect("highlight", {}, 30000);
}); 

不清楚您打算如何选择要高亮显示的行。您发布的代码将始终找到第一行的ID,然后高亮显示该行中的元素。请注意,我在响应对象中找到ID,但我在DOM上执行高亮显示效果。目前,当响应对象只包含1行时,它工作得相当好。如果包含2个或更多,则仅突出显示第一个。这是我的问题。不清楚您打算如何选择要突出显示的行。您发布的代码将始终找到第一行的ID,然后高亮显示该行中的元素。请注意,我在响应对象中找到ID,但我在DOM上执行高亮显示效果。目前,当响应对象只包含1行时,它工作得相当好。如果包含2个或更多,则仅突出显示第一个。这是我的问题。如果你阅读我的javascript代码,你会发现我在响应对象中找到了id,但我在DOM上执行了高亮显示效果。不管怎样,谢谢你。这对我来说太完美了。我知道使用JSON更好,但这样做是有原因的,超出了这个问题的范围。谢谢。如果你阅读了我的javascript代码,你会发现我在响应对象中找到了id,但是我在DOM上执行了突出显示效果。不管怎样,谢谢你。这对我来说太完美了。我知道使用JSON更好,但这样做是有原因的,超出了这个问题的范围。谢谢