jQuery 遍历的 eq() 方法将匹配元素集缩减值指定 index 上的一个,index表示元素的位置(最小为 0)。所以获取Table第 i 行第 j 列的内容可用如下代码
$("table").find("tr").eq(i-1).find("td").eq(j-1).text(); // 注意-1是因为index从0开始计数
实例演示
创建Html元素
填写行列数,点击按钮后获取对应位置的数值:
1 2 3
4 5 6
7 8 9
第行,第列
添加css样式
div.box{width:300px;height:250px;padding:10px 20px;border:4px dashed #ccc;}
div.box>span{color:#999;font-style:italic;}
div.content{width:250px;height:100px;margin:10px 0;padding:5px 20px;border:2px solid #ff6666;}
input[type='text']{width:35px;height:30px;border:1px solid #99ccff;}
input[type='button']{width:100px;height:30px;margin:10px;border:2px solid #ebbcbe;}
.selected{background:#99ccff;}
table{border-collapse:collapse;}
td{padding:5px 10px;border:1px solid green;}
编写jquery代码
$(function(){
$("input:button").click(function() {
row = $("input[name='row']").val() - 1;
col = $("input[name='col']").val() - 1;
val = $("table").find("tr").eq(row).find("td").eq(col).text();
alert(val);
});
})
观察显示效果
next 是取同辈元素,不是去子元素的
alert($("tr:nth-child(3) td:nth-child(5)").html());
alert($("tr:eq(2) td:eq(4)").html());
alert($("tr:eq(2)").children().eq(4).html());
以上三个都能取到第三行第五列
不是eq的问题,最简单的办法:
$("tr:eq(2) td:eq(4)").html();