Ajax实现简单下拉选项效果【推荐】_AJAX相关

基本都是固定步骤!主要在JAVASCRIPT和PHP中的操作

1、HTML代码里就只有两个SELECT标签如下:

<select id="province">
  <option>请选择</option>
 </select>
 <select id="city">
  <option>请选择</option>
 </select>

2、Javascript中进行创建选项和执行AJAX异步请求步骤如下

<script>
  var xhr = getXhr();
  // 第一次执行Ajax异步请求 - 省份
  window.onload = function(){
    xhr.open("get","finaly.php?state=1");
    xhr.send(null);
    xhr.onreadystatechange = function(){
    if(xhr.readyState==4&&xhr.status==200){
        var data = xhr.responseText;
        // 将字符串转换为数组
        var provinces = data.split(",");
        // 遍历数组
        for(var i=0;i<provinces.length;i++){
          // 创建option元素添加到id为province元素上
          var option = document.createElement("option");
          var text = document.createTextNode(provinces[i]);
          option.appendChild(text);
          var province = document.getElementById("province");
          province.appendChild(option);
        }
      }
    }
  }
  // 第二次执行Ajax异步请求 - 城市
  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(province.value != "请选择"){
      xhr.open("post","finaly.php");
      xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
      xhr.send("province="+province.value);
      xhr.onreadystatechange = function(){
        if(xhr.readyState==4&&xhr.status==200){
          var data = xhr.responseText;
          var cities = data.split(",");
          for(var i=0;i<cities.length;i++){
            var option = document.createElement("option");
            var text = document.createTextNode(cities[i]);
            option.appendChild(text); 

            city.appendChild(option);
          }
        }
      }
    } 

  } 

  function getXhr(){
    var xhr = null;
    if(window.XMLHttpRequest){
      xhr = new XMLHttpRequest();
    }else{
      xhr = new ActiveXObject("Microsoft.XMLHttp");
    }
    return xhr;
  }
 </script>

3、PHP代码如下:文件名为:finaly.php与JS中:xhr.open(method,url)方法的url对接!

<?php
  // 接收客户端发送的请求数据 - state
  $state = $_REQUEST['state'];
  // 判断$state的值
  if($state == 1){// 获取省份
    echo '山东省,辽宁省,吉林省';
  }else{// 获取城市
    $province = $_POST['province'];
    switch ($province){
      case '山东省':
        echo '青岛市,济南市,威海市,日照市,德州市';
        break;
      case '辽宁省':
        echo '沈阳市,大连市,铁岭市,丹东市,锦州市';
        break;
      case '吉林省':
        echo '长春市,松原市,吉林市,通化市,四平市';
        break;
    }
  }
?>

关键就是如何实现AJAX异步交互:参考JS代码。可以说的固定步骤。

以上这篇Ajax实现简单下拉选项效果【推荐】就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索ajax
下拉选项
ajax实现级联下拉列表、ajax实现下拉加载更多、ajax实现动态下拉框、ajax实现下拉列表联动、ajax实现下拉框联动,以便于您获取更多的相关知识。

时间: 2025-01-22 17:44:13

Ajax实现简单下拉选项效果【推荐】_AJAX相关的相关文章

Ajax实现列表无限加载和二级下拉选项效果

Ajax做列表无限加载和Ajax做二级下拉选项,供大家参考,具体内容如下 //栏目Ajax做加载 public function ajaxlist(){ //echo "http://www.域名.com/index.php?a=Index&c=Index&m=ajaxlist"; //echo "<hr>"; $data = Q('sum'); $where = array(); $where['cid'] = 33; $rongyuL

jQuery实现简单下拉导航效果_jquery

本文实例讲述了jQuery实现简单下拉导航效果.分享给大家供大家参考.具体如下: 这里粗略做一款基于jquery的下拉导航菜单效果,我觉得挺不错,虽然没有怎么美化,但是代码易懂,另外修补的空间也比较大,相信对学习CSS以及jquery的朋友有不小的帮助. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/jquery-xl-down-show-nav-codes/ 具体代码如下: <!DOCTYPE HTML> <html> <

ajax三级联动下拉菜单效果

ajax写三级联动,先写一个文件类吧,以后用的时候直接调用即可: 来找一张表: 实现: 中国地域的三级联动:省.市.区: 图: 说一下思路: (1)当用户选择省份的时候触发事件,把当前的省份的id通过ajax发出请求传递到服务端的程序中 (2)比如取中国地域,中国是0001,那么自带号为0001的便是中国地域: 北京的代号为11,那么子代号为11的便是北京时的市区, 也就是说根据主代号查询子代号: (3)服务端根据客户端的请求,查询数据库,并按照一定的格式返回给客户端 显示页面非常简单,只需要一

js 简单下拉菜单效果

Dropdown Sample Main Menu Item 1 Item 2 Item 3 Site Search Enter search terms:

ajax读取数据库内容实现二级联动下拉选择菜单示例_AJAX相关

复制代码 代码如下: <PRE class=javascript name="code"></PRE><PRE class=javascript name="code">---------------------这是ajax(javascript)代码---------------------------</PRE><PRE class=javascript name="code">&l

ajax智能提示+textbox动态生成下拉框示例代码_AJAX相关

复制代码 代码如下: <div class="searchwellist">快捷查询:<select id="searchSelect" runat="server"><option value="1" selected="selected">按内管码</option><option value="2">按标记码</opt

jquery实现简单的二级导航下拉菜单效果_jquery

本文实例讲述了jquery实现简单的二级导航下拉菜单效果.分享给大家供大家参考.具体如下: jQuery代码实现的二级导航菜单效果,非常简洁,喜欢简洁风格的朋友您可以下载哦.菜单最多支持两级,CSS的配合也是挺重要的,不多说了,要代码的就直接复制吧. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/jquery-2jxl-menu-codes/ 具体代码如下: <title>jquery二级导航菜单</title> <styl

PHP+Jquery与ajax相结合实现下拉淡出瀑布流效果【无需插件】_php实例

导读: 瀑布流,又称瀑布流式布局.是比较流行的一种网站页面布局,视觉表现为参差不齐的多栏布局,随着页面滚动条向下滚动,这种布局还会不断加载数据块并附加至当前尾部.最早采用此布局的网站是Pinterest,逐渐在国内流行开来.国内大多数清新站基本为这类风格,像花瓣网.蘑菇街.美丽说等. 不废话,直接上代码,整段代码分为前后两段代码,具体代码如下所示. 前台: <?php <br>$category=$this->getMyVal('category',$_GET);<br>

jQuery简单实现两级下拉菜单效果代码_jquery

本文实例讲述了jQuery简单实现两级下拉菜单效果代码.分享给大家供大家参考.具体如下: 这是一款两级下拉菜单,jquery插件版,在IE6/IE7/IE8下运行良好,在本示例中,菜单仅显示了四组,不过原理是一样的,菜单较长的话直接复制其中一组就行了,直到满足你的应用. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/jquery-simple-2l-slideout-menu-codes/ 具体代码如下: <!DOCTYPE html PUBL