gpt4 book ai didi

javascript - 单击事件在表中被触发两次

转载 作者:行者123 更新时间:2023-11-30 07:12:20 25 4
gpt4 key购买 nike

我有一个表,其中有两列分别名为 nameattendance,这是一个单选按钮,我想实现它,每当我点击一行时,我都会得到值该行的姓名和出勤率。问题是每当我单击一行时,事件都会触发两次并显示两次名称。我在下面添加了代码

<table class="col-md-12 text-center">
<tr>
<th class="text-center">Name</th>
<th class="text-center">Attendance</th>

</tr>
<tr class="" data-id='1'>
<td>Md. Khairul Basar</td>
<td class="form-inline table_attendance">
<div class="form-check form-check-radio">
<label class="form-check-label">
<input class="form-check-input" type="radio" name="exampleRadio"
id="exampleRadios1" value="option1">
<span class="form-check-sign"></span>
Present
</label>
</div>
<div class="form-check form-check-radio">
<label class="form-check-label">
<input class="form-check-input" type="radio" name="exampleRadio"
id="exampleRadios2" value="option2" checked>
<span class="form-check-sign"></span>
Absent
</label>
</div>
</td>
</tr>
</table>

以下是 jQuery 代码。

<script>

$(document).ready(function () {
$(".table_attendance").on('click', function () {
var attendance = {
name: $(this).closest("tr").find("td:nth-child(1)").text()
}
});
});

</script>

我已经关注了与此问题相关的其他答案并添加了他们的解决方案,例如添加 .off("click")

e.preventDefault();
e.stopImmediatePropagation();

但这些都不起作用,而且使用 .preventDefault() 会禁用单选按钮中的选中选项。请帮我处理代码。

最佳答案

像下面这样更新你的点击事件:

$(".table_attendance").on('click', 'input', function(e) {

您可以在下面尝试:

$(document).ready(function() {  
$(".table_attendance").on('click', 'input', function(e) {
var attendance = {
name: $(this).closest("tr").find("td:nth-child(1)").text()
};
console.log(attendance);
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<table class="col-md-12 text-center">
<tr>
<th class="text-center">Name</th>
<th class="text-center">Attendance</th>

</tr>
<tr class="" data-id='1'>
<td>Md. Khairul Basar</td>
<td class="form-inline table_attendance">
<div class="form-check form-check-radio">
<label class="form-check-label">
<input class="form-check-input" type="radio" name="exampleRadio"
id="exampleRadios1" value="option1">
<span class="form-check-sign"></span>
Present
</label>
</div>
<div class="form-check form-check-radio">
<label class="form-check-label">
<input class="form-check-input" type="radio" name="exampleRadio"
id="exampleRadios2" value="option2" checked>
<span class="form-check-sign"></span>
Absent
</label>
</div>
</td>

</tr>
</table>

关于javascript - 单击事件在表中被触发两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52982310/

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