jquery操作table
类别:Web前端 浏览量:956
时间:2016-3-20 jquery操作table
jquery操作table一、删除行
//删除除第一行外的所有行
$("#table1 tr:not(:first)").remove();
//删除指定行
$("#table1 tr:eq(3)").remove();
二、删除一列
//删除除第一列外的所有列
$("#table1 tr th:not(:nth-child(1))").remove();
$("#table1 tr td:not(:nth-child(1))").remove();
//删除第一列
$("#table1 tr td::nth-child(1)").remove();
三、得到(设置)某个单元格的值
//设置table1,第2个tr的第一个td的值。
$("#table1 tr:eq(1) td:nth-child(1)").html("value");
//获取table1,第2个tr的第一个td的值。
$("#table1 tr:eq(1) td:nth-child(1)").html();
四、获取每一行指定的单元格的值
var arr = [];
$("#table1 tr td:nth-child(1)").each(function (key, value) {
arr.push($(this).html());
});
var result = arr.join(',');
五、全选或全不选
//方法一:
//全选或全不选 此传入的参数为event 如:checkAll(event)
function checkAll(evt)
{
evt=evt?evt:window.event;
var chall=evt.target?evt.target:evt.srcElement;
var tbl=$("#table1");
var trlist=tbl.find("tr");
for(var i=1;i<trlist.length;i++)
{
var tr=$(trlist[i]);
var input=tr.find("INPUT[type='checkbox']");
input.attr("checked",chall.checked);
}
}
//方法二:
//全选或全不选 此传入的参数为this 如:checkAll(this)
function checkAll(evt)
{
var tbl=$("#table1");
var trlist=tbl.find("tr");
for(var i=1;i<trlist.length;i++)
{
var tr=$(trlist[i]);
var input=tr.find("INPUT[type='checkbox']");
input.attr("checked",evt.checked);
}
}
//方法三:
//全选或全不选 此传入的参数为this 如:checkAll(this)
function checkAll(evt)
{
$("#table1 tr").find("input[type='checkbox']").each(function(i){
$(this).attr("checked",evt.checked)
});
}
//方法四:
//全选或全不选 此传入的参数为this 如:checkAll(this)
function checkAll(evt)
{
$("#table1 tr").find("input[type='checkbox']").attr("checked",evt.checked);
}
六、插入新行
//在表格最后的位置
var newRow = "<tr style=\\"background:red;\\"><td>新行第一列</td><td>新行第二列</td><td>新行第三列</td><td>新行第四列</td><td>新行第五列</td></tr>";
$("#table3 tr:last").after(newRow);
//在第二行之后插入
var newRow = "<tr style=\\"background:red;\\"><td>新行第一列</td><td>新行第二列</td><td>新行第三列</td><td>新行第四列</td><td>新行第五列</td></tr>";
$("#table3 tr:eq(1)").after(newRow);
七、合并行单元格
//合并 第二行第二个和第三个单元格
$("#table3 tr:eq(1) td:eq(1)").attr("colspan", 2);
$("#table3 tr:eq(1) td:eq(2)").remove();
八、拆分行单元格
$("#table3 tr:eq(1) td:eq(1)").attr("colspan", 1);
$("#table3 tr:eq(1) td:eq(1)").after("<td>第二行第三列</td>")
九、合并列单元格
//合并第二列第二个单元格和第三个单元格
$("#table3 tr:eq(1) td:eq(1)").attr("rowspan", 2);
$("#table3 tr:eq(2) td:eq(1)").remove();
十、拆分列单元格
$("#table3 tr:eq(1) td:eq(1)").attr("rowspan", 1);
//在下面行第一个单元格后插入单元格
$("#table3 tr:eq(2) td:eq(0)").after("<td>第三行第二列</td>");
十一、表格奇偶行变色
$(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")
});
十二、鼠标移动到行更换背景色
$(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") })
});
标签:jquery
您可能感兴趣
- jquery插件开发
- jquery on绑定hover
- jQuery toggleClass
- jQuery如何操作下拉框select
- jquery无缝滚动代码(jQuery实现表格行数据滚动效果)
- MVC中使用jQuery加载分部视图(PartialView)
- jquery中change()
- jQuery给动态添加的元素绑定事件
- jqueryajax实现部分刷新(php+jQuery ajax实现的实时刷新显示数据功能示例)
- jquery deferred对象
- jquery中wrap、wrapAll、wrapInner
- jquery滚动固定插件在哪(jquery 步骤进度轴插件的实现代码)
- jquery遍历json字符串
- jquery中hasClass()、is()判断是否包含指定的class
- jquery.ajax error 如何调试错误
- jQuery中height()、innerheight()、outerheight()的区别
- 专访 《紧急公关》折射现实生态 主演黄晓明 理性看待 向往美好(紧急公关折射现实生态)
- 庆余年剧组重聚王牌5,宋轶神秘消失,肖战出现一秒抢了李纯风头(庆余年剧组重聚王牌5)
- 巴厘岛旅游攻略(巴厘岛旅游攻略7天多少钱)
- 文莱旅游攻略(文莱旅游攻略介绍)
- 马来西亚旅游攻略(马来西亚旅游攻略自由行攻略)
- 缅甸旅游攻略(缅甸旅游攻略必去景点推荐)
热门推荐
- djangoapi接口开发(Django使用AJAX调用自己写的API接口的方法)
- node.js express 上线(node+express实现分页效果)
- MySql开启远程连接
- dedecms系统怎么查看(DedeCMS V5.3/V5.5/V5.7 安全设置指南 图文推荐)
- dedecms友情链接设置(dedecms友情链接中去掉织梦链投放修改方法)
- python测试websocket接口(Python如何爬取实时变化的WebSocket数据的方法)
- node中使用token(浅谈node使用jwt生成的token应该存在哪里)
- react循环有几种方法(React forwardRef的使用方法及注意点)
- mysql数据库基础练习(最全50个Mysql数据库查询练习题)
- dede织梦的后台如何调整和使用(织梦DEDECMS中增加父栏目调用,以及多级支持currentstyle的方法)