首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >结合使用.on()和.each()的jQuery

结合使用.on()和.each()的jQuery
EN

Stack Overflow用户
提问于 2013-01-31 08:13:00
回答 4查看 451关注 0票数 0

我正在尝试使任何带有"RW“字符串的TD单元格都具有一个红色类。我需要使用.on,因为网格有分页和重新加载新内容。我还需要使用每个,因为可能有多个TD单元格包含该字符串。

代码语言:javascript
运行
复制
 $("#json-table").on("tbody tr td"){
 if ($(this).text() == 'RW').each({
 $(this).addClass('red'))};
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-01-31 08:25:17

你会想要在这里使用.filter()来缩小你的集合,但是没有更多的信息,我们无法说出从哪里调用它。请记住,jQuery函数在整个集合上运行,下面是您想要的:

代码语言:javascript
运行
复制
$("#json-table tbody tr td").filter(function() {
  return $(this).text() == 'RW';
}).addClass('red');

你需要用你的分页代码来调用...and。

编辑:由于您似乎正在使用datatables.net,一个更完整的示例应该是:

代码语言:javascript
运行
复制
$('#json-table').bind('sort filter page', function () {
  $("tbody tr td", this).filter(function() {
    return $(this).text() == 'RW';
  }).addClass('red');
});
票数 1
EN

Stack Overflow用户

发布于 2013-01-31 08:15:21

如果您不关心td中是否存在其他字符,则可以使用:contains选择器更直接地筛选出正确的单元格:

代码语言:javascript
运行
复制
$('#element_id').on('click', function() {
    $('#json-table td:contains("RW")').addClass('red');
});

其中,element_id是要分配给单击事件处理程序的元素的ID。

票数 2
EN

Stack Overflow用户

发布于 2013-01-31 08:19:56

.on().each()是完全不同的。.on() is used to attach an event where as .each() is used to iterate over objects or arrays.

尝尝这个

代码语言:javascript
运行
复制
$("#json-table tbody tr td").each(function(){
       var $this = $(this);
    if($this.text().indexOf('RW') > -1)){
        $this.addClass('red');
    }|
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14616304

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档