用JS如何获得table中checkbox所在的行列值弄了一个上午了好捉急!

用JS如何获得table中checkbox所在的行列值弄了一个上午了好捉急!,第1张

你可以使用 JavaScript 中自带的 rowIndex 和 cellIndex 来获取行和列的键值 (从0开始)

点击 checkbox,获取 parentNode (也就是 td),tdcellIndex 就是所在列的键值

点击 checkbox,获取 parentNodeparentNode (也就是 tr),trrowIndex 就是所在行的键值

<script type="text/javascript">

// 点击

documentonclick = function(e) {

    // 兼容 event 和 target

    e = e || windowevent;

    var target = etarget || esrcElement;

    // 确认是 checkbox

    if(targettagNametoLowerCase() === "input"

        && targettype === "checkbox") {

        // 获取行列键值

        var row_num = targetparentNodeparentNoderowIndex;

        var col_num = targetparentNodecellIndex;

        // 输出

        alert(row_num + " " + col_num);

    }

};

</script>

因为键值是从 0 开始,一般需要 +1 才是行列数,但因为你表单中第一行个第一列都是文字,所以不需要 +1 正好输出需要的数字,例如点击周四 + 6,会输出 4 6

先说思路:

当点击某一行的时候,能得到这个tr的对象,可以通过这个对象得到该行的所有td对象,这时候可以通过一个序号来获取这一行的某个td的数据

下面以代码来解释

<table id="tb">

    <tr>

        <td>a</td><td>b</td><td>c</td>

    </tr>

    <tr>

        <td>aa</td><td>bb</td><td>cc</td>

    </tr>

</table>

<script>

    //以jquery为例实现点击某行获得某个td的数据

    $( "#tb tr" )click( function() {//给每行绑定了一个点击事件

        var td = $( this )find( "td" );//this指向了当前点击的行,通过find我们获得了该行所有的td对象

        //题中说到某个td,为了演示所以我们假设是要获得第3个td的数据

        var data = tdeq( 2 )html();//通过eq可以得到具体的某个td对象,从而得到相应的数据

    } );

</script>

综上,我们就实现了通过点击某行获得某个td的数据。

直接在td里面添加click事件click="test(this)",然后就可以比较容易的获取到table各行各列的值

thisvalue就是里面的值,还有thisinnerText,thisHTMl具体用什么,根据情况考虑

以上就是关于用JS如何获得table中checkbox所在的行列值弄了一个上午了好捉急!全部的内容,包括:用JS如何获得table中checkbox所在的行列值弄了一个上午了好捉急!、在表格中单击其中的某一行产生一个js单击事件,怎么样在js获取这一行的某一个td的数据、js中如何获得jsp里table中的值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9626920.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存