慕凉生 2017-12-09 06:00 采纳率: 66.7%
浏览 2510
已采纳

jquery用div+span做的多选框,怎么获得选中的多个span的值?

图片说明

上图是前端页面.
前端代码如下:

D色 E色 F色 G色 H色 I色
我写的取值代码如下:
$(".dia_menu_lst span").click(function (e) {
    $(this).siblings().each(function(){
       $(this).removeClass("selected"); //去除同一个div下span兄弟节点的选中状态
    });
    $(this).toggleClass("selected"); // 点击某个span时添加或移除选中状态
    weight =$('#weigdiv .selected').attr('data'); //选择含有选中状态selected的元素(有选中状态状态的span)
    neatness =$('#neatdiv .selected').attr('data');
    var color =$('#colordiv .selected').attr('data');
    alert(ctgId +" "+weight+" "+neatness+" "+color);
}); 
    问题:因为每次点击的时候会去除兄弟的选中状态,所以实现不了多选.neatness和weight需要单选,color需要多选.求教各位大神怎么取得多选的color的值,我每次都只能取到一个.
  • 写回答

3条回答 默认 最新

  • 听楼一夜雨 2017-12-09 07:17
    关注
    最后遍历选中的那几条数据,赋值给一个变量就行了,随便写的,不一定正确
        var color="";
        var i=0;
        $('#colordiv .selected').each(function(){
            if(i!=0){
                    color+=","+$(this.attr("data"));
            }else{
                    color+=$(this.attr("data"));
            }
    
            i++;
        })
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?