一尘不染

如何获取所有选中的复选框

html

我有一组具有相同名称的输入复选框,并且我想确定已使用JavaScript选中了哪些复选框,如何实现呢?我只知道如何获取所有复选框,如下所示:

var checkboxes = document.getElementsByName('mycheckboxes');

阅读 740

收藏
2020-05-10

共1个答案

一尘不染

一个简单的for循环,用于测试checked属性并将选中的属性附加到单独的数组中。从那里,checkboxesChecked如果需要,您可以进一步处理数组。

// Pass the checkbox name to the function
function getCheckedBoxes(chkboxName) {
  var checkboxes = document.getElementsByName(chkboxName);
  var checkboxesChecked = [];
  // loop over them all
  for (var i=0; i<checkboxes.length; i++) {
     // And stick the checked ones onto an array...
     if (checkboxes[i].checked) {
        checkboxesChecked.push(checkboxes[i]);
     }
  }
  // Return the array if it is non-empty, or null
  return checkboxesChecked.length > 0 ? checkboxesChecked : null;
}

// Call as
var checkedBoxes = getCheckedBoxes("mycheckboxes");
2020-05-10