jquery插件实现无限级级联下拉框

       项目中经常用到级联下拉框,虽然是一个简单的功能,但每用到一次写一次,用到一次写一次,也烦,找原来写的也烦,这次重新写一个放到iteye(第一次用这新名)这里,以后用到的时候随时可以找到,也顺便和大家分享一下,很简单的一段代码:

      

<html>

<head>

<title></title>
<script type="text/javascript" src="http://ajax.microsoft.com/ajax/jQuery/jquery-1.4.2.min.js"></script>
<script language="javascript" type="text/javascript">
(function($){
    $.fn.extend({
        loadSelect:function(opt){
            var defaultOpt={
                url:"select.json",
                pid:""
            };
            var opts = $.extend(defaultOpt,opt);
            var $this=$(this);
            $.getJSON(opts.url,function(json){
                var html='<select οnchange="javascript:$(this).selectSelect()"><option value="0">请选择</option>';
                $.each(json,function(i,n){
                    html+= '<option value="'+n.id+'">'+n.text+"</option>\n";
                }); 
                html += "</select>\n";
                $this.append(html);
            });
        },
        selectSelect:function(opt){
            var defaultOpt={
                url:"select_data.json",
                pid:""
            };
            var opts = $.extend(defaultOpt,opt);
            var $this=$(this);
            $this.nextAll().remove();
            $.getJSON(opts.url,function(json){
                var html='<select οnchange="javascript:$(this).selectSelect(this)"><option value="0">请选择</option>';
                $.each(json,function(i,n){
                    html+= '<option value="'+n.id+'">'+n.text+"</option>\n";
                }); 
                html += "</select>\n";
                $this.after(html);
            });
        }
    });

})(jQuery);
$(function(){$("#cascade").loadSelect({url:"select_data.json"});});
</script>
</head>
<body>
<div id="cascade">
</div>
</body>

</html>

     当然,这段代码功能还有很多改进的地方,比如下拉框的个数初始化,以及联动的初始化等等。有兴趣的朋友或者已经有实现了的朋友也请分享下。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值