使用td:contains查找完全匹配

时间:2013-06-04 18:27:31

标签: jquery selector contains

我知道这已被问过几次,但它对我不起作用。我有这个:

$("td:contains('Hello')").html("Hi");                   
$("td:contains('Hello World')").html("Bye");

我做到了这一点:

$("td:contains('Hello')").filter(function() { 
    return $(this).text() == "Hi";
});

但两者都是“嗨”。我只希望将具有确切字符串“Hello”的表数据替换为“Hi”。 “Hello World”应该替换为“Bye”,但事实并非如此。有人可以帮忙吗?

2 个答案:

答案 0 :(得分:5)

你似乎想要这个:

$("td").filter(function() { 
    return $(this).text() == "Hello";
}).text('Hi');

答案 1 :(得分:1)

contains是一个子字符串匹配。您执行的第一个操作将替换任何地方都有Hello ANY 节点,因此Hello World将被销毁。然后第二行将不匹配任何内容,因为文档中不再有Hello World个节点。

如果您只是颠倒操作顺序:

$("td:contains('Hello World')").html("Bye");
$("td:contains('Hello')").html("Hi");                   

然后它按预期工作

相关问题