javascript - 如何获取选定复选框的标签
问题描述
我想看看在选择这些复选框时如何只返回这些复选框中的标签。这是代码:
<label class="threeLabel">
<input type="checkbox" id="chkBusinessActivityStore" name= "Business" class="validate-reqchk-byname label: 'Business Activity'" > " Store"
</label>
<label class="threeLabel">
<input type="checkbox" id="chkBusinessActivityCoffeeShop" name= "Business" class="validate-reqchk-byname label: 'Business Activity'" > " Coffee Shop"
</label>
<label class="threeLabel">
<input type="checkbox" id="chkBusinessActivityBar" name= "Business" class="validate-reqchk-byname label: 'Business Activity'" > " Bar"
</label>
解决方案
您需要更正您的 html 语法(关闭元素等)。然后您可以将点击事件侦听器添加到您的输入中,检查它们是否被“选中”,并从父标签中获取标签文本。例如:
const inputs = document.querySelectorAll('input');
for (const input of inputs) {
input.addEventListener('click', (event) => {
const elem = event.currentTarget;
if (elem.checked) {
const label = elem.parentNode.textContent;
console.log(label);
}
});
}
<label class="threeLabel">
<input type="checkbox" id="chkBusinessActivityStore" name="Business" class="validate-reqchk-byname label: 'Business Activity'">
Store
</label>
<label class="threeLabel">
<input type="checkbox" id="chkBusinessActivityCoffeeShop" name="Business" class="validate-reqchk-byname label: 'Business Activity'">
Coffee Shop
</label>
<label class="threeLabel">
<input type="checkbox" id="chkBusinessActivityBar" name="Business" class="validate-reqchk-byname label: 'Business Activity'">
Bar
</label>
推荐阅读
- java - 将查询中的 BIT 作为 Prepared Statement 中的参数传递
- angular - 从日期选择器将角度字符串转换为日期
- emacs - Convert a selected region to org table
- r - 引用特定值下的行,同时保持过滤器打开
- c++ - 语法问题:`char [5] const &`是什么意思?
- r - 从数据框中提取所有 8 位数字
- javascript - ChartJS 图表在添加新数据后出现错误
- go - 使用 big.Rat 和 Go 获取 Abs() 值
- ios-simulator - 无法在模拟器 MacOS Catalina 上打开应用程序
- javascript - 显示上次 ajax 调用值的表单