使用Ajax异步请求实现省市联动下拉列表

省市联动下拉列表:在网页上,选择对应的省份之后,动态的关联出该省份对应的市。选择对应的市之后,动态的关联出该市对应的区。本文只实现省市联动

本文使用的环境是:

        集成开发环境:IntelliJ IDEA 2022.1    

        开源服务器:tomcat-10.0.20   

        Java驱动:jdk17     

        MySQL版本:mysql=8.0.22

首先进行数据库表的设计:每个省份或城市都有编码,字段为code,每个省份或城市的都有相应名字,字段为area,为了方便我们使用一张表存储数据,所以每个城市都有一个父编码表示所在的省份的编码,而省份没有父编码。如下图所示的数据库表截图:

 

然后进行前端页面的设计:

一共两个下拉列表:

实现代码:接受服务器端返回的json格式字符串,取出其中的数据,放到前端界面上。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>ajax实现省市联动</title>
    <script type="text/javascript">
        window.onload = function (){
            // 在页面加载完成之后将省份查询出来,显示出下拉列表
            /*
            ajax发送异步请求四步
            1.创建XMLHttpRequest对象
            2.编写回调函数
                 判断核心对象XMLHttpRequest的状态,其中
                        0:请求未初始化
                        1:服务器连接已建立
                        2:请求已收到
                        3:正在处理请求
                        4:请求已完成且响应已就绪
            3.开启通道
            4.发送请求
             */
            // 第一步
            var xhr1 = new XMLHttpRequest()
            // 第二步
            xhr1.onreadystatechange = function (){
                if (xhr1.readyState == 4){  //  判断ajax核心对象的状态
                    if (xhr1.status ==200){   // 判断浏览器的响应状态码,200表示请求成功
                        // 接受服务器端返回的json格式字符串:xhr1.responseText,将其使用JSON.parse()函数转化为一个jaon对象
                        var jsonArea = JSON.parse(xhr1.responseText)
                        // 创建一个字符型变量,进行拼接 省 下拉列表的html代码
                        var html = "<option valu
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值