如何用Jquery获取Table指定行中指定列的数值

例如说第三行第五列
我的想法是$("tr:eq(3)").next("td:eq(5)")
但是并不成功
单独获取其中一部分都没有问题
两个eq一块用就不能识别了

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);
    });
    })

    观察显示效果

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-05-12
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());
以上三个都能取到第三行第五列本回答被提问者和网友采纳
第2个回答  2011-03-21
不是eq的问题,最简单的办法:
$("tr:eq(2) td:eq(4)").html();
相似回答