我的HTML中有一个表格,
<table>
<tr><td>1</td><td>2</td><td>3</td></tr>
<tr><td>a</td><td>2</td><td>c</td></tr>
<tr><td>x</td><td>2</td><td>3</td></tr>
<tr><td>1</td><td>2</td><td>3</td></tr>
</table>
我想在第一个和第二个<td>
元素内容中找到重复的内容。
这是我到目前为止所得到的:
$(function() {
$("table tr").each(function() {
});
});
我坚持选择第一个和第二个元素并进行比较。我只是添加一个类或使用jquery选择器吗?
答案 0 :(得分:2)
如果我理解的话,这就是你在列中找到重复项的方法。
如果要删除它,可以使用.addClass
,.remove()
代替。
http://jsbin.com/wenuwewide/edit?js,console,output
$('tr').each(function() {
$(this).find('td').each(function(i) {
if(values[i].indexOf($(this).text()) > -1) {
$(this).addClass('duplicate');
}
values[i].push($(this).text());
});
});
答案 1 :(得分:2)
只将前两个值的组合存储为对象
中的属性$(function() {
var el = {};
$("table tr").each(function() {
// get row
var row = $(this);
// get first and second td
var first = row.find('td:first-child').val();
var second = row.find('td:nth-child(2)').val();
// if exists, remove the tr
if(el[first + second]) {
$(this).remove())
}
else {
// if it does not exist, add it with some random val
el[first + second] = 1;
}
});
});