jQuery实现联动下拉列表查询框
在查询与列表显示的时候经常用到联动列表显示,比如一级选项是国家,二级选项是省,三级是市,这样的联动是联系的实时导出的,比如你不可能选择了四川省却在三级联动栏中出现济南市,这样的联动实现方法如下:
效果图示:
实现源代码:
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title> <meta name="keywords" content=" keywords" /> <meta name="description" content="description" /> </head> <script type="text/javascript" src="jquery-1.4.2.min.js"></script> <style type="text/css"> body{font-size:13px} .clsInit{width:435px;height::35px;line-height:35px;padding-left:10px} .clsTip{padding-top:5px;background-color:#eee;display:none} .btn{border:solid 1px #666;padding:2px;width:65px;float:right;margin-top:6px;margin-right:6px;filter:progid:DXImageTransform.Mcrosoft.Gradient(GraientType=0,StartColorStr=#FFFFFF,EndColorStr=#ECE9D8);} </style> <body> <script type="text/javascript"> $(function(){ function objInit(obj){ return $(obj).html('<option>请选择</option>'); } var arrData={ 厂商1:{品牌一:'型号1-1-1,型号1-1-2', 品牌二:'型号1-2-1,型号1-2-2'}, 厂商2:{品牌一:'型号2-1-1,型号2-1-2', 品牌二:'型号2-2-1,型号2-2-2'}, 厂商3:{品牌一:'型号3-1-1,型号3-1-2', 品牌二:'型号3-2-1,型号3-2-2'} }; $.each(arrData,function(pF){ $('#selF').append('<option>'+pF+'</option>'); }); $('#selF').change(function(){ objInit('#selT'); objInit('#selC'); $.each(arrData,function(pF,pS){ if($('#selF option:selected').text()==pF){ $.each(pS,function(pT,pC){ $('#selT').append('<option>'+pT+'</option>'); }); $('#selT').change(function(){ objInit('#selC'); $.each(pS,function(pT,pC){ if($('#selT option:selected').text()==pT){ $.each(pC.split(","),function(){ $('#selC').append('<option>'+this+'</option>'); }) } }) }); } }) }); }); </script> <div class="clsInit"> 厂商:<select id="selF"><option>请选择</option></select> 品牌:<select id="selT"><option>请选择</option></select> 型号:<select id="selC"><option>请选择</option></select> <input type="button" value="查询" id="Button1" class="btn" /> </div> <div class="clsInit" id="divTip"></div> </body> </html>