我动态加载的数据
效果是这样子
但是我执行事件时候,却执行了两次
------------------------------------------------------------------------
我发现静态时候是没问题的
(第一种会执行一次,第二种会执行2次,意思第二种写法是不支持的)
$(".tab_left_div .select_dom").on('changed.bs.select',function(e) {
            console.log( "2" );
        });$(".tab_left_div").on('changed.bs.select'," .select_dom",function(e) {
console.log( "3" );
 });
------------------------------------------------
但是我动态添加只能这样子写呀
$(".tab_left_div").on('changed.bs.select'," .select_dom",function(e) { });请问我这个怎么处理呀

解决方案 »

  1.   

    动态添加的代码
    var datas = data.data.items;
                $.each( datas , function( index , value ){
                    var types = '';
                    switch(value.type) {
                        case 1:
                            types  = '年代';
                            break;
                        case 2:
                            types  = '材质';
                            break;
                        default:
                            types  = '类型';
                    }                var option = '<option value="0">'+ types +'</option>';
                    $.each( value.tag , function( ind , val ){
                        option += '<option value="'+val.id+'">'+val.name+'</option>';
                    });                var select = '<select type="'+value.type+'" class="selectpicker dropdown show-tick show-menu-arrow select_dom" data-size="8" >' + option + '</select>';                $(".tab_left_div.float_l").append( select );
                });
    -----------------------------------
    显示的内容<div class="tab_left_div float_l">
        <select type="1" class="selectpicker dropdown show-tick show-menu-arrow select_dom" data-size="8" tabindex="-98">
           <option value="0">年代</option>
           <option value="111">西汉</option>
           <option value="222">唐</option>
           <option value="333">三国</option>
           <option value="444">清</option>
        </select>
    </div>--------------------------------------
    执行的事件
            $(".tab_left_div").on('changed.bs.select'," .select_dom",function(e) {
                console.log( "2" );
            });
      

  2.   

    应该是绑定了两次  后边加个return false; 应该就可以了