Javascript 如果表中某行有选中的复选框,则获取该行中的列
我有一张像下面这样的桌子Javascript 如果表中某行有选中的复选框,则获取该行中的列,javascript,jquery,html-table,Javascript,Jquery,Html Table,我有一张像下面这样的桌子 <table id="adminTable"> <thead> <tr> <th></th> <th>Username</th> <th>Email</th> <tr> </thead> <tbody> <tr><td><input type='checkbox' name='selected_us
<table id="adminTable">
<thead>
<tr>
<th></th>
<th>Username</th>
<th>Email</th>
<tr>
</thead>
<tbody>
<tr><td><input type='checkbox' name='selected_users[]' value='User1'/></td><td>User1</td><td>mail1@mail.com</td></tr>
<tr><td><input type='checkbox' name='selected_users[]' value='User2'/></td><td>User2</td><td>mail2@mail.com</td></tr>
...
</tbody>
</table>
用户名
电子邮件
User1mail1@mail.com
User2mail2@mail.com
...
我在下面有一个按钮,它调用javascript函数。
然后,此功能将获取用户通过复选框选择的所有电子邮件
我对Javascript和jQuery非常陌生,不知道如何实现这一点。。。
但我可以使用普通Javascript或jQuery
我已经找到了,但我无法让它帮助我,因为我不想在我的行中有一个按钮(可以通过复选框进行多项选择)。您可以使用以下功能,只需单击按钮即可运行:
$(":button").click(function() {
var emails = $("input[name=selected_users[]]:checked").map(function() {
return $(this).closest("td").next("td").text();
}).get();
console.log(emails); //array of emails that were checked
});
请记住,html中的TR标记没有结束标记,并且不合适
$("#adminTable").find("td").filter(function()
{
return $(this).find("input[type=checkbox]:checked").length > 0;
});