abstract:<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>作业提示:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>作业提示: 三级联动菜单</title> </head> <body> 省 <select name="" id="pro"></select> 市 <select name="" id="city"></select> 区 <select name="" id="area"></select> <p id="addr"></p> <script src="../static/jquery.js"></script> <script> $(function(){ $.getJSON('inc/1.json',function(data){ let option = '<option value="">选择(省)</option>'; $.each(data,function(i){ option += '<option value="'+data[i].proId+'">'+data[i].proName+'</option>'; }); $('#pro').html(option); }); $('#pro').change(function(){ //查看当前选择中元素内容 console.log($(this).find(':selected').text()); $('#addr').html($(this).find(':selected').text()); $.getJSON('inc/2.json',function(data){ let option = '<option value="">选择(市)</option>'; $.each(data,function(i){ if (data[i].proId == $('#pro').val()) { option += '<option value="'+data[i].cityId+'">'+data[i].cityName+'</option>'; } }); $('#city').html(option); }); }); $('#city').change(function(){ //查看当前选择中元素内容 console.log($(this).find(':selected').text()); var a=$('#pro').find(':selected').text(); $('#addr').html(a+$(this).find(':selected').text()); $.getJSON('inc/3.json',function(data){ let option = '<option value="">选择(县区)</option>'; $.each(data,function(i){ if (data[i].cityId == $('#city').val()) { option += '<option value="'+data[i].areaId+'">'+data[i].areaName+'</option>'; } }); $('#area').html(option); }); }); $('#area').change(function(){ //查看当前选择中元素内容 console.log($(this).find(':selected').text()); var a=$('#pro').find(':selected').text(); var b=$('#city').find(':selected').text(); $('#addr').html(a+b+$(this).find(':selected').text()); }); //思考: 如何将获取到的内容,及时的回显到页面中,动态的提示用户当前的选择内容,实现数据绑定 }) </script> </body> </html>
总结
1;用getJson获取服务器上的json数据
2;分级拿到select里面,用option拼接
3:var a=$('#pro').find(':selected').text();用代码找到选择的那个地区
然后拼接到一起。动态显示到p标签里面。
不知道可以不可以声明全局变量。因为有重复代码。
Correcting teacher:天蓬老师Correction time:2019-04-27 17:37:05
Teacher's summary:变量是为项目服务器, 尽管要尽可能避免声明全局变量, 但是如果全局变量可以极大的简化代码, 不妨声明一个, 总之浏览器不差你这一个变量