javascript - 为什么无法在数组中获取输入值复选框?
问题描述
在下面描述的代码中,输入的值应该从数组中的每个人那里获取,并且应该创建一个带有 innerHtml 中输入值的新 div。我不知道为什么会出现未定义长度值的错误?
<input type="checkbox" class="checkboxnewdivs" id="checkboxnewdivs" name="checkboxnewdivs" value="divsone">
<input type="checkbox" class="checkboxnewdivs" id="checkboxnewdivs" name="checkboxnewdivs" value="divstwo">
<input type="checkbox" class="checkboxnewdivs" id="checkboxnewdivs" name="checkboxnewdivs" value="divsthree">
<button onclick="myFunction()">Click me</button>
<div id="container"></div>
function myFunction() {
let array = [];
var checkboxnewdivs = document.querySelectorAll('input[name="checkboxnewdivs"]:checked');
for (var i = 0; i < checkboxnewdivs.length; i++) {
var iddivs = array.push(checkboxnewdivs[i].value);
var div_new = document.createElement("DIV");
div_new.innerHTML = "ID div:"+iddivs ;
document.getElementById("container").appendChild(div_new);
}
}
解决方案
var checkboxnewdivs = document.querySelectorAll('input[name="checkboxnewdivs"]:checked').value;
应该
var checkboxnewdivs = document.querySelectorAll('input[name="checkboxnewdivs"]:checked');
第一个是尝试value
从节点集合中获取属性,这显然是未定义的。
你也有一些错别字(双's')并且没有array
在任何地方定义。定义你定义的地方checkboxnewdivs
。
推荐阅读
- tensorflow - Tensorflow 上的 CPU 使用率高
- jboss - JBoss LiveReload 被弃用的原因是什么,还有其他选择吗?
- c# - mqtt 客户端总是不接收消息
- vue.js - 使用带有 weex 的 vue 路由器
- bash - 在 shell 脚本中检测 GTK3 的可用性
- azure - 不区分大小写的 Azure 搜索
- java - 为什么我们不能在java中制作动态数组
- amazon-web-services - 资源暂时不可用 - TCP 5985
- angular - Angular 4 recaptcha - 意外令牌 <
- sql - MSSQL - 授予对除一个表之外的所有表的选择权限