我有一個函數,它掃描一個表的變量(keyID),並選擇包含該變量的表格單元格。可變當前被定義爲:jquery什麼用於完全匹配,而不是包含
selectedTD = table.find('td:contains("' + keyID + '")');
然而,如果KEYID = 10,然後將selectTD如果一個表格單元格包含10個返回值,100,1010等
如何使僅可變selectTD當keyID完全匹配時選擇表格單元格,而不是包含?
我有一個函數,它掃描一個表的變量(keyID),並選擇包含該變量的表格單元格。可變當前被定義爲:jquery什麼用於完全匹配,而不是包含
selectedTD = table.find('td:contains("' + keyID + '")');
然而,如果KEYID = 10,然後將selectTD如果一個表格單元格包含10個返回值,100,1010等
如何使僅可變selectTD當keyID完全匹配時選擇表格單元格,而不是包含?
使用filter()
通過返回true的功能通過每個項目集合中,如果該項目應包括:
selectedTD = table
.find('td')
.filter(
function() {
return this.innerText === keyID
});
ETA: 如果你能控制的HTML生成的,我建議你添加keyid的作爲data-
屬性,如<td data-keyid="keyhere">
。然後,你可以簡單地使用$('td[data-keyid=' + keyID + ']')
嘗試使用.filter(),如:
selectedTD = table.find('td').filter(function(){
return $.trim(this.innerHTML) == keyID;
});
沒有單一的,本地jQuery選擇,可以讓你做到這一點,但good answers here。或者,this jQuery extension看起來很有希望。
我有一種感覺op不會希望嚴格的平等檢查在這裏... – Madbreaks
@Madbreaks是的,重新讀這個問題,我想你可能是對的。編輯。 – BYossarian