bootstrap-selectドロップダウン検索プラグインが自分のデータを動的にロードする2次連動

14537 ワード

bootstrap-selectはbootのドロップダウン検索プラグインで、バックグラウンドから動的にロードするか、動的にデータを直接ロードする必要がある場合があります.
次は、一級ドロップダウンメニューに基づいて、二級連動方式を動的にロードします.
まずjsとcssファイル(1つのcssの2つのjs)を導入します.
<link rel="stylesheet" href="css/bootstrap-select.css">
js  

一、ドロップダウン検索(html)
<select class="selectpicker" data-live-search="true" id="d1">
    <option value="-1">   option>
    <option value="0">0option>
    <option value="1">1option>
    <option value="2">2option>
    <option value="3">3option>
select>
<select class="selectpicker" data-live-search="true" id="d2">
    <option value="-1">   option>
select>
二、ロードデータ二級連動(js)
function smallScreen(){     //          ,    
    if($(window).width()<768){
        $('.bootstrap-select:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn)').css({
            'width':'100%',
            'margin-top':'10px'
        });
    }
}
$(function(){
var erji=[   //ajax  
        ['   ','   ','   '],  // 0
        ['   ','   ','   '],  // 1
        ['   ','   ','   ','   '],  // 2
        ['   ','   ','   ']  // 3
    ];
    var yuan = '
  • '
  • + // ''+ ' ' + '' + '' + ''; $('#d1').change(function(){ // if($(this).val() === '-1'){ $('#d2').prev('div.dropdown-menu').find('ul').html(yuan); $('#d2').html(''); $('.selectpicker').selectpicker('refresh'); smallScreen(); return; } var cityIndex = erji[ this.value ]; // var html = '
  • '
  • + // ''+ ' ' + '' + '' + ''; var erjiOption = ''; // option for(var i = 0;i<cityIndex.length;i++){ html+= '
  • '
  • + ''+ ''+cityIndex[i]+'' + '' + '' + ''; // ie, ES6 。 // option erjiOption += '+cityIndex[i]+''; } $('#d2').prev('div.dropdown-menu').find('ul').html(html); $('#d2').html(erjiOption); $('.selectpicker').selectpicker('refresh'); smallScreen(); }); });
    });
        ,    。