在HTML表中查找重复记录

时间:2011-11-17 00:09:58

标签: javascript jquery datatables

我正在使用DataTable pulgin并且对添加重复行有疑问。

当用户向(HTML)表添加记录时,我想检查表中是否已存在该记录(在客户端)。

例如:

       Column A
Row 1  ABC

现在如果用户尝试添加“ABC”,我想抛出错误。

任何人都可以提供指针如何使用jQuery或Datatables实现这一目标吗?

3 个答案:

答案 0 :(得分:2)

function findInTable(str, tableID){
    $('#' + tableID + ' tr').each(function(){
        $(this).children('td').each(function(){
            if ( $(this).html() == str ){
                alert('found');
                return false;
            }
        });
    }); 
}

findInTable('ABC', 'mytable'); // <table id="mytable">...</table>

答案 1 :(得分:0)

这应该可以解决您的问题。调整此

<script type="text/javascript">
<!--
function cellContent() {
  var content=document.getElementsByTagName('td');
for(c=0;c<content.length;c++) {
   alert ('td cell number '+(c+1)+' contains...\n ' +content[c].innerHTML);
  }
 }
onload=cellContent;
//-->
</script>

答案 2 :(得分:0)

对于较小的表,有一种hacky方法。将行转换为字符串,并将它们放在关联数组中,最适合单列表,并且有多种方法可以处理多个列

因此,假设您插入ABC

if (tableData["ABC"] != undefined) tableData["ABC"] = 1;
else alert("Duplicate");

此外,如果循环应该负责将行添加到UI