为了账号安全,请及时绑定邮箱和手机立即绑定

JQuery 调用 .elements 返回未定义

JQuery 调用 .elements 返回未定义

慕无忌1623718 2022-10-21 15:41:32
我正在尝试使用 jQuery 遍历一组复选框。复选框是用 HTML 编写的,如下所示:<div id="checkboxes">     <div class="custom-control custom-checkbox">         <input type="checkbox" name="XXX" class="custom-control-input" id="a" value="XXX">         <label class="custom-control-label" for="a">XXX</label>     </div>     <div class="custom-control custom-checkbox">         <input type="checkbox" name="XXX" class="custom-control-input" id="b" value="XXX">         <label class="custom-control-label" for="b">XXX</label>     </div>     ...</div>我试图用这个(对按钮单击的响应的一部分)获取 JQuery 中的复选框数组:var choices = document.getElementById("checkboxes").elements;但是,当我调用 时for(let i = 0; i < choices.length; i++),控制台中出现错误:Uncaught TypeError: Cannot read property 'length' of undefined显然,该变量choices未定义。我已经做了一些研究,但我找不到问题出在哪里,或者我可以通过其他方式获取复选框元素的数组。
查看完整描述

1 回答

?
繁星coding

TA贡献1797条经验 获得超4个赞

用于querySelectorAll()定位特定的元素集合

var choices = document.querySelectorAll('#checkboxes input[type="checkbox"]');


choices.forEach( el => console.log(el.id, el.value) )

<div id="checkboxes">

    <div class="custom-control custom-checkbox">

        <input type="checkbox" name="XXX" class="custom-control-input" id="a" value="XXX">

        <label class="custom-control-label" for="a">XXX</label>

    </div>

    <div class="custom-control custom-checkbox">

        <input type="checkbox" name="XXX" class="custom-control-input" id="b" value="XXX">

        <label class="custom-control-label" for="b">XXX</label>

    </div>

    

</div>



查看完整回答
反对 回复 2022-10-21
  • 1 回答
  • 0 关注
  • 104 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号