摘要:三级联动菜单小代码测试,经过多次调试,中间出错N多,不知道怎么后来又好了,真是好事多磨。<!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <
三级联动菜单小代码测试,经过多次调试,中间出错N多,不知道怎么后来又好了,真是好事多磨。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title>ajax三级联动菜单</title> <style type="text/css"> p{float:left;height:30px;line-height:30px;margin:10px 10px;width:150px;} select{border:1px solid #ccc;width:100px;height:30px;} </style> <script src="inc/jquery.min.js"></script> </head> <body> <p>一级 <select name="one" id="one"></select> </p> <p>二级 <select name="two" id="two"></select> </p> <p>三级 <select name="three" id="three"></select> </p> <script type="text/javascript"> $(function(){ $.getJSON('inc/one.json',function(data){ let option = '<option value="">请选择</option>'; $.each(data, function(i) { option += '<option value="'+data[i].oneId+'">'+data[i].oneName +'</option>'; }); console.log(option); $('#one').html(option); }); $("#one").change(function(){ console.log($(this).find(':selected').text()); $.getJSON('inc/two.json',function(data){ let option = '<option value="">请选择</option>'; $.each(data,function(i){ if(data[i].oneId == $('#one').val()){ option += '<option value="'+data[i].twoId+'">'+data[i].twoName+'</option>'; } }); console.log(option); $('#two').html(option);//写入第二个菜单内容 $('#one option:first').remove();//删除第一个option }); }); $("#two").change(function(){ console.log($(this).find(':selected').text()); $.getJSON('inc/three.json',function(data){ let option = '<option value="">请选择</option>'; $.each(data,function(i){ if(data[i].twoId == $('#two').val()){ option += '<option value="'+data[i].threeId+'">'+data[i].threeName+'</option>'; } }); console.log(option); $('#three').html(option);//写入第二个菜单内容 $('#two option:first').remove();//删除第一个option }); }); $('#three').change(function(){ //查看当前选择中元素内容 console.log($(this).find(':selected').text());//控制台输出第三级选中的内容 $('#three option:first').remove(); }); }) </script> </body> </html>
批改老师:天蓬老师批改时间:2018-12-25 13:09:23
老师总结:这个小小案例,其实里面有非常多的知识点的, 能做下来,很不容易