Jquery包含选择器,正则表达式

时间:2012-05-05 10:39:49

标签: jquery regex jquery-selectors contains

这是我的代码:
假设name设置为john

$("#first_table").append($('#second_table').find("tr:contains(" + name + ")"));

基本上我的网站上有两张桌子。我想将元素从第一个移动到第二个,但前提是它们完全匹配。我怎么能这样做?

现在如果我(例如)john john #1john #2在我的表格中,他们就会被移动。我只想移动john并离开john #1john #2 谢谢! 编辑: 我希望代码能够完全匹配变量name。 因此,如果nameJOHN,则必须获得JOHN。如果是JOHN #1,则只能获得JOHN #1,依此类推。这可能吗?

2 个答案:

答案 0 :(得分:0)

可能是缺少报价的情况。尝试在name周围添加单引号,如下所示。

$("#first_table").append($('#second_table').find("tr:contains('" + name + "')"));

答案 1 :(得分:0)

由于每个名称案例对:contains(" + name +")语句都有效,因此它匹配所有名称。

尝试使用:not来省略带有“#”

的那个
$("#first_table").append($('#second_table').find("tr:contains(" + name + "):not(:contains('#'))"));

更新

如果你想准确了解里面的价值观。然后使用类似的东西

$("#second_table tr td").each(function() {
   if($(this).text() == 'John') { 
     $(this).closest("tr").appendto($("#first_table")); //find the cotaining tr and append to another table
   }
});