我是Javascript的新手,需要你的帮助。 我希望有一个元素ID数组供下次使用。
示例:
<div id="myDiv">
<input type="checkbox" id="checkbox1" class="checkboxes" value="checkbox1_v">
<input type="checkbox" id="checkbox2" class="checkboxes" value="checkbox2_v">
<input type="checkbox" id="checkbox3" class="checkboxes" value="checkbox3_v">
<input type="checkbox" id="checkbox4" class="checkboxes" value="checkbox4_v">
</div>
我需要的是这样的数组(“checkbox1,checkbox2,checkbox3,checkbox4”)设置为var以便在下一个js函数中使用,如果选中了合适的复选框,则显示/隐藏div(使用forEach检查每个复选框和如果选择,则设置为.show to div)。
显示/隐藏我拥有的js的一部分,并且在测试中它适用于一个特定的复选框。但是拥有数组的原因是复选框的数量是动态的,而常见的属性只是外部div和输入类的“myDiv”。
提前致谢。
答案 0 :(得分:4)
您可以使用.map()生成像
这样的数组var ids = $('#myDiv .checkboxes').map(function(){
return this.id;
}).get();
在这种情况下,它会使用类复选框
生成一个包含所有元素的ID的数组答案 1 :(得分:0)
您可以使用 .map() :
通过函数传递当前匹配集中的每个元素, 生成一个包含返回值的新jQuery对象。
var idArr = $('#myDiv input[type="checkbox"]').map(function() {
return this.id
}).get();
<强> Fiddle Demo 强>