You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用JavaScript获取name属性为数组格式的checkbox输入元素

实现方案

针对name属性为website_response[]的复选框,前端JavaScript获取时不需要对属性名里的方括号做特殊转义,直接把完整属性名作为字符串查询即可,以下是两种常用实现方式:

方法1:使用getElementsByName直接获取

直接传入完整的name属性值,即可拿到所有匹配的复选框集合:

// 获取所有对应复选框元素
const checkboxes = document.getElementsByName('website_response[]');
// 存储选中的结果
const selectedRes = [];

checkboxes.forEach(item => {
  // 可单独获取每个复选框的选中状态和值
  console.log('选中状态:', item.checked, '对应值:', item.value);
  if (item.checked) {
    selectedRes.push(item.value);
  }
});

console.log('所有选中的值:', selectedRes);

方法2:使用querySelectorAll属性选择器获取

适配性更强,还可以结合表单做范围限定:

// 限定只在name为formname的表单下查询
const checkboxes = document.formname.querySelectorAll('input[name="website_response[]"]');
const selectedRes = [];

for (let i = 0; i < checkboxes.length; i++) {
  if (checkboxes[i].checked) {
    selectedRes.push(checkboxes[i].value);
  }
}

补充:如果需要监听复选框的选中变化事件,也可以直接给获取到的元素集合绑定监听:

document.querySelectorAll('input[name="website_response[]"]').forEach(item => {
  item.addEventListener('change', function() {
    console.log('当前操作的复选框值:', this.value, '新的选中状态:', this.checked);
  });
});

内容的提问来源于stack exchange,提问作者Sumaiya Noorjahan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 11:36:09