如何用Jquery获取Table指定行中指定列的数值
例如说第三行第五列我的想法是$("tr:eq(3)").next("td:eq(5)")但是并不成功单独获取其中一部分都没有问题两个eq一块用就不能识别了...
例如说第三行第五列
我的想法是$("tr:eq(3)").next("td:eq(5)")
但是并不成功
单独获取其中一部分都没有问题
两个eq一块用就不能识别了 展开
我的想法是$("tr:eq(3)").next("td:eq(5)")
但是并不成功
单独获取其中一部分都没有问题
两个eq一块用就不能识别了 展开
3个回答
展开全部
jQuery 遍历的 eq() 方法将匹配元素集缩减值指定 index 上的一个,index表示元素的位置(最小为 0)。所以获取Table第 i 行第 j 列的内容可用如下代码
$("table").find("tr").eq(i-1).find("td").eq(j-1).text(); // 注意-1是因为index从0开始计数
实例演示
创建Html元素
<div class="box">
<span>填写行列数,点击按钮后获取对应位置的数值:</span><br>
<div class="content">
<table>
<tr><td>1</td><td>2</td><td>3</td></tr>
<tr><td>4</td><td>5</td><td>6</td></tr>
<tr><td>7</td><td>8</td><td>9</td></tr>
</table>
</div>
第<input type="text" name="row">行,第<input type="text" name="col">列<input type="button" class="btn" value="确定">
</div>添加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());
以上三个都能取到第三行第五列
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();
$("tr:eq(2) td:eq(4)").html();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询