Javascript 如何获取选中复选框在表中的位置

Javascript 如何获取选中复选框在表中的位置,javascript,checkbox,Javascript,Checkbox,我有一张桌子,每行都有一堆复选框。当两个或一个复选框都在第一行中选中时,如何找到复选框的位置,例如1A或1B。我试图修改的页面根据行和列的两个因素动态生成表。所以我只需要获取rowname和colname,以便进一步编程。e、 g.10(A)如果第一行的名称为“10” <table id="mytable"> <tr> <td> </td> <td align="center"> A </t

我有一张桌子,每行都有一堆复选框。当两个或一个复选框都在第一行中选中时,如何找到复选框的位置,例如1A或1B。我试图修改的页面根据行和列的两个因素动态生成表。所以我只需要获取rowname和colname,以便进一步编程。e、 g.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>

A.
B
1.
2.
点击

这将获得选中的
输入的列和行,并通过调用获取列字母和行号,使用CSS3
第一个子项和
第n个子项基于列和行的选择器:

document.getElementById('mytable').addEventListener('click',函数(e){
如果(e.target.tagName=='INPUT'){
var td=e.target.parentNode,//输入的td父节点
tr=td.parentNode,//td的tr父节点
col=td.cellIndex,//输入的列
row=tr.rowIndex,//输入的行
header=document.querySelector('#mytable tr:first child td:n child(+(col+1)+')).textContent,
number=document.querySelector('#mytable tr:nth child('+(行+1)+')td:first child').textContent;
document.getElementById('output').textContent=number+header;
}
});

A.
B
1.
2.

试试这个@plain javascript:

var checkboxes = [];
for(var i =0; i<document.getElementsByTagName("input").length;i++) { 
 if(document.getElementsByTagName("input")[i].checked) {checkboxes.push(i)}
}
var复选框=[];
对于(var i=0;i或类似情况:


为什么不给你的复选框起名字?@MarcoAurélioDeleu像这样?
你想做什么?@MarcoAurélioDeleu虽然我要修改的页面,但是会根据行和列的两个因素动态生成表。所以我只需要抓取行和列,以便进一步编程。为什么不
document.getElementById('mytable')。children[1]。children[1]。选中
?如果行1的行名为'10',行2的行名为'2',我需要在复选框数组中获得10,2。感谢您的帮助。以下是我尝试使用它的方式,但它对我无效。这是因为您混合了JavaScript和jQuery。尝试以下方法:
 function getCheckBox(){
    var oneA = document.getElementById('1a');
    var oneB = document.getElementById('1b');
    var twoA = document.getElementById('2a');
    var twoB = document.getElementById('2b');
    if (oneA.checked){
        alert("1 A was checked") ;
    }
    if(oneB.checked){
        alert("1 B was checked") ;
    }
    if(twoA.checked){
        alert("2 A was checked") ;
    }
    if(twoB.checked){
        alert("2 B was checked") ;
    }
    }