前一篇是把省份和城市都写在JS里,这里把城市放在PHP里,通过发送Ajax请求城市数据渲染到页面。

1、html

<select id="province"><option>请选择</option><option>山东省</option><option>辽宁省</option><option>吉林省</option></select><select id="city"><option>请选择</option></select>

2、javascript

<script>/** 需要思考哪些事情?* * 在什么时候执行Ajax的异步请求?*   * 当用户选择具体的省份信息时*/// 1. 为id为province元素绑定onchange事件var provinceEle = document.getElementById("province");provinceEle.onchange = function(){// 清空var city = document.getElementById("city");var opts = city.getElementsByTagName("option");for(var z=opts.length-1;z>0;z--){city.removeChild(opts[z]);}if(provinceEle.value != "请选择"){// 2. 执行Ajax异步请求var xhr = getXhr();xhr.open("post","06.php");xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr.send("province="+provinceEle.value);xhr.onreadystatechange = function(){if(xhr.readyState==4&&xhr.status==200){// 接收服务器端的数据内容var data = xhr.responseText;// data是字符串,转换为数组var cities = data.split(",");for(var i=0;i<cities.length;i++){var option = document.createElement("option");var textNode = document.createTextNode(cities[i]);option.appendChild(textNode);city.appendChild(option);}}}}};// 定义获取ajax核心对象的函数XMLHttpRequest对象的函数function getXhr(){var xhr = null;if(window.XMLHttpRequest){xhr = new XMLHttpRequest();}else{xhr = new ActiveXObject("Microsoft.XMLHttp");}return xhr;}</script>

3、06.php

<?php// 用于处理客户端请求二级联动的数据// 1. 接收客户端发送的省份信息$province = $_POST['province'];// 2. 判断当前的省份信息,提供不同的城市信息switch ($province){case '山东省':echo '青岛市,济南市,威海市,日照市,德州市';break;case '辽宁省':echo '沈阳市,大连市,铁岭市,丹东市,锦州市';break;case '吉林省':echo '长春市,松原市,吉林市,通化市,四平市';break;}// 服务器端响应的是字符串
?>

Ajax实现的城市二级联动一相关推荐

  1. ajax和php二级联动,jQuery+php+mysql,轻松实现ajax无刷新省市二级联动[多图]

    jQuery+php+mysql,轻松实现ajax无刷新省市二级联动[多图] 08-15栏目:技术 TAG:zxfy zxfy 用jQuery的ajax方法,结合PHP,轻松实现省市级的二级联动: h ...

  2. web中ajax实现二级联动,Ajax实现城市二级联动(一)

    前一篇是把省份和城市都写在JS里,这里把城市放在PHP里,通过发送Ajax请求城市数据渲染到页面. 1.html 请选择 山东省 辽宁省 吉林省 请选择 2.javascript /* * 需要思考哪 ...

  3. addoption php,无忧建站-ajax+php无刷新二级联动下拉菜单(省市联动)源码

    /** * ajax无刷新二级联动下拉菜单(省市联动) * * @author      arcow * @version     1.0 * @lastupdate  2005-12-29 * */ ...

  4. 二级联动省市mysql数据库_「zxfy」jQuery+php+mysql,轻松实现ajax无刷新省市二级联动 - seo实验室...

    zxfy 用jQuery的ajax方法,结合PHP,轻松实现省市级的二级联动: 新建area.php $dbc=mysqli_connect("localhost","x ...

  5. ajax下拉框二级联动 php,关于thinkphp 与 ajax 实现二级联动下拉列表

    表的结构 cId 分类id cName 分类名称 gid 父级id 这是我的HTML页面 <volist name="rs" id="val"> & ...

  6. DOM之城市二级联动

    1.HTML内容 <select id="province"><option>请选择</option><option>山东省< ...

  7. jqurey ajax 的动态添加二级联动下拉菜单

    aspx <div id="Attribute"> 添加类型:<span class="oper"> <a href=" ...

  8. mysql 城市二级联动_MYSQL二级联动

    表数据 查询结果 { "电器": [{ "1": [{ "parent_id": "1", "parent_n ...

  9. Ajax案例-基于XML,以POST方式,完成省份-城市二级下拉联动

    <%@ page language="java" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC & ...

最新文章

  1. Linux的文件管理命令
  2. R语言:使用REmap绘制超炫酷的地图
  3. 使用JVisualVM远程监控Tomcat
  4. mac 搭建php wamp,Linux,Windows,Mac平台php环境配置
  5. 为什么nodejs是单进程的_nodejs真的是单线程吗?
  6. 面试重点:设计模式(二)——创建模式
  7. 长沙黑梨路枪击抢劫案
  8. Less 文档查看心得
  9. java 8 stream中的Spliterator简介
  10. JSP 登录案例实现
  11. Parhaps you are running on a JRE rather than a JDK?
  12. ic408服务器系统,威力铭408mt技术描述和配置.docx
  13. 在Master page 里 CompositeControl 的事件失效了
  14. 《了凡四训》,仅仅12句,改变你的命运
  15. 随手记_常用coding软件的快捷键-clion/vs code/vs/kdevelop
  16. Oracle中索引的使用 索引性能优化调整
  17. UML?类图中聚合和组合的区别
  18. 网络经商赚钱经典50问
  19. donet 微服务开发 学习-使用docker部署Asp.net core web应用程序
  20. SIGGRAPH 2022--岩鸽彩虹色羽毛渲染阅读笔记:Rendering Iridescent Rock Dove Neck Feathers

热门文章

  1. cx oracle6 oracle10,python安装cx_Oracle
  2. python数据分析需要数据库吗_python数据分析|使用python操作MySQL数据库
  3. swift和python语法区别_Swift 基本语法
  4. 设置窗口大小后无法滚动_新款奥迪A6L更换变速器机电单元后无法完成油冷却阀基本设置...
  5. 第十七届全国大学生完全车模组竞速赛方案 - 草案
  6. 2021年春季学期-信号与系统-第十四次作业参考答案-第六小题参考答案
  7. 恩智浦AI视觉组之逐飞岁末彩蛋
  8. 直线轨道上声音延迟信号分析
  9. 什么是清华大学的“三好”学生?
  10. Linux下的权限掩码umask,Linux下的权限掩码umask