gpt4 book ai didi

javascript - 如何获取选中的复选框在表格中的位置

转载 作者:行者123 更新时间:2023-11-30 16:32:05 24 4
gpt4 key购买 nike

我有一张表格,每一行都有一堆复选框。我怎样才能找到复选框的位置,例如1A 或 1B 当在第一行中选中两个或一个复选框时。我试图修改的页面根据行和列的两个因素动态生成表格。所以我只需要获取 rowname 和 colname 以便进一步编程。例如10(A) 如果第一行的名称是“10”。

<table id="mytable">
<tr>
<td> </td>
<td align="center"> A </td>
<td align="center"> B </td>
</tr>
<tr>
<td> 1 </td>
<td><input type="checkbox" /></td>
<td><input type="checkbox" /></td>
</tr>
<tr>
<td> 2</td>
<td><input type="checkbox" /></td>
<td><input type="checkbox" /></td>
</tr>
</table>
<tr> <button id="save">Click</button> </tr>

最佳答案

这将获取选中的输入 的列和行,并通过调用 document.querySelector 获取列字母和行号。 ,使用基于列和行的 CSS3 first-childnth-child 选择器:

document.getElementById('mytable').addEventListener('click', function(e) {
if(e.target.tagName === 'INPUT') {
var td= e.target.parentNode, //the input's td parent
tr= td.parentNode, //the td's tr parent
col= td.cellIndex, //the input's column
row= tr.rowIndex, //the input's row
header= document.querySelector('#mytable tr:first-child td:nth-child('+(col+1)+')').textContent,
number= document.querySelector('#mytable tr:nth-child('+(row+1)+') td:first-child').textContent;

document.getElementById('output').textContent= number+header;
}
});
<table id="mytable">
<tr>
<td></td>
<td align="center">A</td>
<td align="center">B</td>
</tr>
<tr>
<td>1</td>
<td>
<input type="checkbox" />
</td>
<td>
<input type="checkbox" />
</td>
</tr>
<tr>
<td>2</td>
<td>
<input type="checkbox" />
</td>
<td>
<input type="checkbox" />
</td>
</tr>
</table>

<div id="output"></div>

关于javascript - 如何获取选中的复选框在表格中的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33180843/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com