如何使用jquery从使用绝对行号的复选框中获取表单元格的值

How to get value of table cell with jquery from checkbox using absolute row number

本文关键字:复选框 获取 表单 单元格 jquery 何使用      更新时间:2023-09-26

我有一个表"mytable",看起来像:

 <tr>
      <td><input type="checkbox" name="check[]" value="11"></td>   
      <td>11</td>
      <td>2014-11-06 18:49:26</td>
      <td>MESSAGE</td>
      <td></td>
      <td>MATCH5</td>
      <td>NO MATCH</td>
      <td>NO MATCH</td>
 </tr>

如果选中,我想从一行中获得第4列"MESSAGE"的值

正如您所看到的,每一行都以一个有值的复选框开始。然而,该值是非顺序的,所以我不能只使用复选框值(我一直在使用

var IDs = $('input:checked').map(function(){
    return $(this).val();
}).get();)

我需要一些计算表格行数的方法,然后我可以使用类似的方法:

 var id= $("#myTable tr").eq(ID).find('td').eq(4).val()

如何做到这一点?

您非常接近,但考虑一下thismap()的上下文中是什么。

this是选中的复选框。从那里你可以找到最接近的tr,然后是具有第三个基于0的索引的td,然后得到该tdtext()td没有value,所以请使用text

var ids = $('table input:checked').map(function(){
    return $(this).closest('tr').find('td:eq(3)').text();
});