2013-12-18 52 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

相關問題