怎么能取到选中的checkbox后的label值

要实现的效果是选中一级类目或者选中二级类目点确定按钮,能取到所选的值.

图片描述

<li>
<label><input type="checkbox" value="" class="ab">家电</label>
<div class="dusInfo">
<ol class="clearfix">
<li><input type="checkbox" value="050101"><label>空调</label></li>
<li><input type="checkbox" value="050102"><label>厨卫</label></li>
<li><input type="checkbox" value="050103"><label>冰洗</label></li>
<li><input type="checkbox" value="050104"><label>小家电</label></li>
<li><input type="checkbox" value="050105"><label>TV</label></li>
</ol>
<a href="#" id="a1">确定</a>
</div>
</li>
$("#a1").click(function(){
var iii = $(this).prev().find("input");
var aaa = '';
$(iii).each(function(){
if( $(iii).prop("checked") == true ){
aaa += $(this).next().text()+',';
}else{
console.log("1")
}
})
console.log(aaa);
})

现在我这个方法就是点击确认按钮 把所有的checkbox后面的值都取到了...

求各位帮忙看看问题出在哪了

阅读 5.9k
2 个回答

你的循环里的判断条件写错了,是 $(this) 不是 $(iii)

$("#a1").click(function(){
    var iii = $(this).prev().find("input");
    var aaa = '';
    $(iii).each(function(){
        if( $(this).prop("checked") == true ) {
            aaa += $(this).next().text()+',';
        } else {
            console.log("1")
        }
    })
    console.log(aaa);
})

$("#a1").click(function(){

var aaa= $(this).prev().find("input").map(function(){return $(this).next().text()}).get().join(","); 
console.log(aaa);

})

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题