2013-12-18 18 views
2

我有一个函数,它扫描一个表的变量(keyID),并选择包含该变量的表格单元格。可变当前被定义为:jquery什么用于完全匹配,而不是包含

selectedTD = table.find('td:contains("' + keyID + '")'); 

然而,如果KEYID = 10,然后将selectTD如果一个表格单元格包含10个返回值,100,1010等

如何使仅可变selectTD当keyID完全匹配时选择表格单元格,而不是包含?

回答

1

使用filter()通过返回true的功能通过每个项目集合中,如果该项目应包括:

selectedTD = table 
       .find('td') 
       .filter(
        function() { 
         return this.innerText === keyID 
        }); 

ETA: 如果你能控制的HTML生成的,我建议你添加keyid的作为data-属性,如<td data-keyid="keyhere">。然后,你可以简单地使用$('td[data-keyid=' + keyID + ']')

0

尝试使用.filter(),如:

selectedTD = table.find('td').filter(function(){ 
    return $.trim(this.innerHTML) == keyID; 
}); 
+0

我有一种感觉op不会希望严格的平等检查在这里... – Madbreaks

+0

@Madbreaks是的,重新读这个问题,我想你可能是对的。编辑。 – BYossarian

相关问题