繁体   English   中英

如果该行具有选中的复选框,则获取该行中的列

[英]Get column in a row in a table if that row has a selected checkbox

我有一张像下面的桌子

<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>

我下面有一个按钮,该按钮调用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
});
$("#adminTable").find("td").filter(function() 
{ 
    return $(this).find("input[type=checkbox]:checked").length > 0;
}); 

请记住,您的html中有TR标签,没有结束标签,并且位置不合适。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM