日期:2014-05-16  浏览次数:20632 次

PHP+Ajax三种方法实现省市县三级联动
        实现省、市、县三级联动是一个最典型、最常用的一个ajax应用案例,当用户选择省的时候出现了该省的所有的市;当用户选择市的时候出现了该市所有的县,那么将怎样实现这样的三级联动的效果呢?我们不妨做个简单的分析:

      想要实现省市县三级联动效果并不难,假设数据库中已经有一个地区的表了,里面存储所有的省市县的信息,实现思路:
      1) 初始化所有的省份,这个可以直接从数据库中查询出来省份
      2)当用户选择省份的时候触发事件,把当前的省份的id通过ajax发出请求传递到服务端的程序中
      3)服务端根据客户端的请求,查询数据库,并按照一定的格式返回给客户端
      4)客户端获取服务端的数据,进行必要的处理显示出来

       服务端的程序根据id查询后,把结果可以封装成多种格式,比如:html 、特殊字符串、Json格式等,下面我们来看下每一种格式都是如何实现的:
       第一种:服务端返回 html格式的情况
       客户端请求页面:

[php] view plaincopyprint?
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
  2. <html xmlns="http://www.w3.org/1999/xhtml"
  3. <head> 
  4. <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
  5. <title>3G开发者联盟-ajax-html.html</title> 
  6. </head> 
  7.  
  8. <body> 
  9.  
  10. <select id="sheng" onchange="getArea(this.value,'shi')" ></select> 省 <select id="shi" onchange="getArea(this.value,'xian')" ></select> 市 <select id="xian" ></select>  
  11. </body> 
  12. </html> 
  13. <script language="javascript" type="text/javascript"
  14.