jquery代码
创新互联服务项目包括向阳网站建设、向阳网站制作、向阳网页制作以及向阳网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,向阳网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到向阳省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
$(".myclass").each(function(){
$("#sub",this).click(function(){
// alert(1)
alert($(this).parents("tr").html());
});
});
});
表格html代码
table border="1"
tr class="myclass"
thMonth/th
thSavings/th
thinput id="sub" type="submit" /input/th
/tr
tr class="myclass"
tdJanuary/td
td$100/td
thinput id="sub" type="submit" /input/th
/tr
/table
通过$(this)获取所点击的按钮,
$(this).parents(“tr”)获取按钮所在行,
$(this).parents(“tr”).find(“.”).text()获取按钮所在行class为的元素的值。
jquery的 length 属性可以获取包含 jQuery 对象中元素的数目,因此通过一下代码可以获取table的行数
$("table tr").length
实例演示如下
创建Html元素
div class="box"
span点击按钮获取表格的行数:/spanbr
div class="content"
table
trtd1/tdtd2/tdtd3/td/tr
trtd4/tdtd5/tdtd6/td/tr
trtd7/tdtd8/tdtd9/td/tr
/table
/div
input type="button" value="获取表格的行数"
/div
设置css样式
div.box{width:300px;padding:20px;margin:20px;border:4px dashed #ccc;}
div.box span{color:#999;font-style:italic;}
div.content{width:250px;margin:10px 0;padding:20px;border:2px solid #ff6666;}
table{border-collapse:collapse;}
td{width:30px;height:30px;line-height:30px;text-align:center;border:1px solid green;}
编写jquery代码
$(function(){
$(":button").click(function() {
alert($("div.content table tr").length);
});
})
观察效果
$('table tr:eq(行数-1,行数从0开始)') // 获取制定行对象,demo:
$('nameTable tr:eq(2)') // 获取第三行
这个问题困了我一天, 最后说说解决方案吧。 我是要获取到table里所有数据并导出至excel,因为分页是在客户端做的,前端已经获取到所有的数据了。 那么最终解决方案就是:
在ajax返回data并动态充填table后,先把此时的table对象赋值给一个全局变量tableObj,然后再手动调用函数做分页处理。 再想获取数据的话直接去tableObj取就可以了。希望本答案能帮助大家
jQuery 提供了index()方法用于获取第一个匹配元素相对于其同胞元素的 index 位置(从0开始计数),基本语法为:$(selector).index()。因此当前 tr 的 index 可以得到行数,当前 td 的 index 可以得到列数。实例演示如下:
1、HTML结构
table id = "test"
trtd1/tdtd2/tdtd3/tdtd4/td/tr
trtd2/tdtd4/tdtd5/tdtd6/td/tr
trtd3/tdtd7/tdtd8/tdtd9/td/tr
trtd4/tdtd1/tdtd2/tdtd3/td/tr
/table
2、jquery代码
$(function(){
$("table td").click(function() {
var row = $(this).parent().index() + 1; // 行位置
var col = $(this).index() + 1; // 列位置
alert("当前位置:第"+row+"行,第"+col+"列")
});
在每个td标签内部添加onclick,你不觉得麻烦,jquery开发者看到会被气死的。
你可以这样
var $table = $("#mytable");//
var $trs = $table.find("tr");
for(var i=0; i$trs.length; i++){
var $tr = $trs.eq(i);//循环获取每一行
$tr.on("click", function(){//为每一行添加click事件
//这里就可以获取行内数据了
var $td = $tr.find("td");
$td.eq(0).text();//ctld
$td.eq(1).text();//llType
$td.eq(2).text();//fsMgr
...
});
}