Jquery 操作 Html Table 是很方便的,這裡對表格的基本操作進行簡單的總結。
首先建立一個通用的表格css 和一個表格Table:
table { border-collapse: collapse; border-spacing: 0; margin-right: auto; margin-left: auto; width: 800px; } th, td { border: 1px solid #b5d6e6; font-size: 12px; font-weight: normal; text-align: center; vertical-align: middle; height: 20px; } th { background-color: Gray; }
表头一 | 表头二 | 表头三 | 表头四 | 表头五 |
---|---|---|---|---|
第一行第一列 | 第一行第二列 | 第一行第三列 | 第一行第四列 | 第一行第五列 |
第二行第一列 | 第二行第二列 | 第二行第三列 | 第二行第四列 | 第二行第五列 |
第三行第一列 | 第三行第二列 | 第三行第三列 | 第三行第四列 | 第三行第五列 |
第四行第一列 | 第四行第二列 | 第四行第三列 | 第四行第四列 | 第四行第五列 |
##
$(document).ready(function () { //鼠标移动到行变色,单独建立css类hover //tr:gt(0):表示获取大于 tr index 为0 的所有tr,即不包括表头 $("#table1 tr:gt(0)").hover( function () { $(this).addClass("hover") }, function () { $(this).removeClass("hover") }) });結果執行結果:
$(document).ready(function () { //奇偶行不同颜色 $("#table2 tbody tr:odd").addClass("odd"), $("#table2 tbody tr:even").addClass("even") //或者 //$("#table2 tbody tr:odd").css("background-color", "#bbf"), //$("#table2 tbody tr:even").css("background-color", "#ffc") });
//删除指定行(第二行) $("#table3 tr:gt(0):eq(1)").remove();# (2)刪除資料列,例如刪除表格中的第二列:
//eq:获取子元素索引从 0 开始,先删除表头 $("#table3 tr th:eq(1)").remove(); //nth-child:获取子元素从 1 开始 $("#table3 tr td:nth-child(2)").remove();(3)刪除其它行,例如第二行之外的所有行:
$("#table3 tr:gt(0):not(:eq(1))").remove();(4)刪除其它列,例如第二列以外的所有欄位:
//先删除表头 $("#table3 tr th:not(:eq(1))").remove(); $("#table3 tr td:not(:nth-child(2))").remove();(5)隱藏行,例如隱藏第二行:
$("#table3 tr:gt(0):eq(1)").hide(); //或者 //$("#table3 tr:gt(0):eq(1)").css("display", "none") //显示 //$("#table3 tr:gt(0):eq(1)").css("display", "");(6)隱藏列,例如隱藏第二列:
$("#table3 tr th:eq(1)").hide(); $("#table3 tr td:nth-child(2)").hide(); //或者 //$("#table3 tr th:eq(1)").css("display", "none"); //$("#table3 tr td:nth-child(2)").css("display", "none"); //显示 //$("#table3 tr th:eq(1)").css("display", ""); //$("#table3 tr td:nth-child(2)").css("display", "");(7)插入新行,在表格最後的位置:
var newRow = "<tr> <td>新行第一列</td> <td>新行第二列</td> <td>新行第三列</td> <td>新行第四列</td> <td>新行第五列</td> </tr>"; $("#table3 tr:last").after(newRow);
var v = ""; $("#table3 tr td:nth-child(2)").each(function () { v += $(this).text()+" "; }); //结果:第一行第二列 第二行第二列 第三行第二列(11)取得一行的所有值,例如第二行:
var v = ""; $("#table3 tr:gt(0):eq(1) td").each(function () { v += $(this).text() + " "; }); //结果:第二行第一列 第二行第二列 第二行第三列 第二行第四列 第二行第五列######(12)合併行單元格例如合併第二行第二和第三個單元格:######
$("#table3 tr:gt(0):eq(1) td:eq(1)").attr("colspan", 2); $("#table3 tr:gt(0):eq(1) td:eq(2)").remove();######(13)拆分行單元格將上面合併的單元格還原:######
//注意不能使用 //$("#table3 tr:gt(0):eq(1) td:eq(1)").removeAttr("colspan"); $("#table3 tr:gt(0):eq(1) td:eq(1)").attr("colspan", 1); $("#table3 tr:gt(0):eq(1) td:eq(1)").after("<td>第二行第三列</td>")##### #(14)合併列單元格,例如合併第二列第二個單元格和第三個單元格######
$("#table3 tr:gt(0):eq(1) td:eq(1)").attr("rowspan", 2); $("#table3 tr:gt(0):eq(2) td:eq(1)").remove();######(15)拆分列單元格,例如將上面剛合併的單元格還原:######
$("#table3 tr:gt(0):eq(1) td:eq(1)").attr("rowspan", 1); //在下面行第一个单元格后插入单元格 $("#table3 tr:gt(0):eq(2) td:eq(0)").after("<td>第三行第二列</td>");######(16)為每個單元格增加點擊事件,並彈出該單元格行索引和列索引:####### ##############
$(document).ready(function () { //点击#table3 的单元格返回 单元格索引 $("#table3 td").click(function () { var tdSeq = $(this).parent().find("td").index($(this)); var trSeq = $(this).parent().parent().find("tr").index($(this).parent()); alert("第" + (trSeq) + "行,第" + (tdSeq+1) + "列"); }) });######################--= 原始碼下載=--######
以上是Jquery Table 的基本操作的詳細內容。更多資訊請關注PHP中文網其他相關文章!