【问题标题】:Why can't get input value checkbox in array?为什么无法在数组中获取输入值复选框?
【发布时间】:2021-01-29 10:52:36
【问题描述】:

在下面描述的代码中,应该从数组中的每个人那里获取输入的值,并且应该创建一个带有 innerHtml 中输入值的新 div。不知道为什么会报错,length.value not defined?

<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);
        
         }        
}

【问题讨论】:

    标签: javascript arrays input checkbox return-value


    【解决方案1】:
    var checkboxnewdivs = document.querySelectorAll('input[name="checkboxnewdivs"]:checked').value;
    

    应该是

    var checkboxnewdivs = document.querySelectorAll('input[name="checkboxnewdivs"]:checked');
    

    第一个尝试从节点集合中获取value 属性,这显然是未定义的。

    您还有一些拼写错误(双 's')并且没有在任何地方定义 array。定义你定义checkboxnewdivs的地方。

    工作演示:https://jsfiddle.net/mitya33/m9L2dvz5/1/

    【讨论】:

    • 但是我得到了,array.push(checkboxnewdivss[i].value) 没有定义?
    • 错字 - checkboxnewdivss 应该是 checkboxnewdivs
    • 其实你有几个错别字。始终检查错误控制台。
    • 对,下一个问题是你没有在任何地方定义array。控制台中生成的错误array is not defined 清楚地表明了这一点。见编辑。
    • 如何在您的示例 jsfiddle 中获取值..,从输入 1 获取值,从输入 2 获取 divone,从输入 3 获取 div3,如果选中,然后添加 div_new innerHTML?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-11-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-06
    • 2018-09-10
    • 1970-01-01
    相关资源
    最近更新 更多