jquery实现的省市区三级联动
编程学习 2021-07-04 21:47www.dzhlxh.cn编程入门
在做项目的时候,我们经常需要用到地址之类的省市区三级联动的,今天就给大家分享一个非常简洁的省市区三级联动的代码,基于jQuery,附上GIT地址,有需要的小伙伴可以直接拿走
省市级联动,附使用示例和数据表数据
有部分数据精确到乡镇一级!!!
Git 地址:
演示代码:
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>省市区三级联动</title> </head> <body> <form method="post" action="post.php"> <div id="area"></div> <input type="submit" style="margin-top: 10px;"> </form> <script src="jquery-2.1.3.min.js"></script> <script src="area.js"></script> <script> $(function(){ add_select(0); $('body').on('change', '#area select', function() { var $me = $(this); var $next = $me.next(); /** * 如果下一级已经是当前所选地区的子地区,则不进行处理 */ if ($me.val() == $next.data('pid')) { return; } $me.nextAll().remove(); add_select($me.val()); }); function add_select(pid) { var area_names = area['name'+pid]; if (!area_names) { return false; } var area_codes = area['code'+pid]; var $select = $('<select>'); $select.attr('name', 'area[]'); $select.data('pid', pid); if (area_codes[0] != -1) { area_names.unshift('请选择'); area_codes.unshift(-1); } for (var idx in area_codes) { var $option = $('<option>'); $option.attr('value', area_codes[idx]); $option.text(area_names[idx]); $select.append($option); } $('#area').append($select); }; }); </script> </body> </html>
以上所述就是本文给大家分享的全部内容了,希望大家能够喜欢。