判斷一列中的單元格內容是否有重覆:本章節介紹一下如何判斷一個指定的列中的所有單元格中是否有單元格內容重覆的,可能在實際應用中很少有這樣的需求,不過可以作為一種參考思路,以便於解決其他的問題,代碼實例如下: <!DOCTYPE html> <html> <head> <meta charset=" u
判斷一列中的單元格內容是否有重覆:
本章節介紹一下如何判斷一個指定的列中的所有單元格中是否有單元格內容重覆的,可能在實際應用中很少有這樣的需求,不過可以作為一種參考思路,以便於解決其他的問題,代碼實例如下:
<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style type="text/css"> .table{ width:300px; height:100px; border:1px solid #ccc; border-collapse:collapse; } .table td,.table th { border:1px solid #ccc; padding:5px; } </style> <script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script> <script type="text/javascript"> function hasRepeat(objId,columnIndex){ var arr=[]; $("#"+objId+" tbody tr").each(function(){ arr.push($("td:eq("+columnIndex+")",this).text()); }); if(arr.length==$.unique(arr).length ){ return false; } else{ return true; } } $(document).ready(function(){ if(hasRepeat("tb",1)){ $("#show").text("有重覆的單元格"); } else{ $("#show").text("沒有重覆的單元格"); } }) </script> </head> <body> <div id="show"></div> <table class="table" id="tb"> <thead> <tr> <th>螞蟻部落一</th> <th>分享互助</th> </tr> </thead> <tr> <td>javascript教程</td> <td>螞蟻部落二</td> </tr> <tr> <td>HTML教程</td> <td>螞蟻部落二</td> </tr> </table> </body> </html>
以上代碼實現了我們的要求,下麵介紹一下它的實現過程。
一.代碼註釋:
1.function hasRepeat(objId,columnIndex){},第一個參數是表格的id屬性值,第二個參數是列的索引值,第一列是0。
2.var arr=[],聲明一個空數組,用來存儲,指定列的所有單元格的文本內容。
3.$("#"+objId+" tbody tr").each(function(){}),遍歷table表格的每一個行。
4.arr.push($("td:eq("+columnIndex+")",this).text()),將每一個行指定列的單元格中的內容寫入數組。
5.if(arr.length==$.unique(arr).length ){return false;},如果數組的長度和去重後的數組長度相同,那麼說明原來的數組中沒有重覆的,那麼就返回false,否則返回true。
二.相關閱讀:
1.each()函數可以參閱jQuery的each()方法一章節。
2.:eq()選擇器可以參閱jQuery的:eq()選擇器一章節。
3.push()函數可以參閱javascript的Array對象的push()方法一章節。
4.text()函數可以參閱jQuery的text()方法一章節。
5.$.unique()函數可以參閱jQuery.unique()方法一章節。
原文地址是:http://www.softwhy.com/forum.php?mod=viewthread&tid=13846
更多內容可以參閱:http://www.softwhy.com/jquery/