js 2级联动

<script>
var mySel = {
	obj :null,
	opt:[],
	link: "/article/content/get-site",
	getOpt:function ( sid ){
        var data = [];
    	$.ajax({
    		url:mySel.link,
    	    async:false,
    	    dataType: 'json',
    		data:{ sid : sid || 0 },
    		success:function( d ){
        	    data = d.data;
        	}
        });
    	return data;
    },
    getHtml:function ( data ,level ){
        var info = mySel.opt[level]; level++ , _s = '';
        var  select = "<div class=\"col-lg-3\"><select class=\"form-control\" name=\""+info[0]+"\"  onchange=\"mySel.buildSel( this, "+level+" )\"><option value=\"-1\">请选择类别</option>";
        $.each( data , function(key, item) {
             _s = '';
             if( item.sid == info[1] )
                 _s = 'selected';
            select += "<option value="+item.sid+" "+_s+">"+item.sname+"</option>";
        });
        select += "</select></div>";
        return select;
    },
    buildSel:function ( obj , level ){
    	var data = mySel.getOpt( obj.value ) , html = '';
        if ( data.length ) {
        	html = mySel.getHtml( data, level );
        }
        //清除子类的select
        $( obj ).parent().nextAll("div").each(function() {
            $(this).remove();
        });
        $( mySel.obj ).append( html );
        $(html).find("select").trigger("change");
    },
    init:function( obj, opt ){
        this.obj = obj;
        mySel.opt = opt;
        mySel.buildSel( 0, 0 );
    }
};
mySel.init( $("#_site")[0], [
      ['s1', '<?= Yii::$app->request->get('s1') ?>'],
      ['s2','<?= Yii::$app->request->get('s2') ?>'],
      ['s3','<?= Yii::$app->request->get('s3') ?>']
]);
</script>

  

posted @ 2016-05-23 18:50  ﹏Sakura  阅读(172)  评论(0)    收藏  举报