仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 3749|回复: 19
打印 上一主题 下一主题

[学习教程] PHP教程之ajax+php无刷新二级联动下拉菜单(省市联...

[复制链接]
飘飘悠悠 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-16 00:30:10 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
培训的第二阶段,开始了PHP语言语法结构和应用的学习。ajax|菜单|刷新|无刷新|下拉   ajax.js
/**
* ajax无刷新二级联动下拉菜单(省市联动)
*
* @author      arcow <arcow@126.com>
* @version     1.0
* @lastupdate  2005-12-29
*
*/
var http_request = false;
function send_request(url,method) {//初始化、指定处置函数、发送恳求的函数
  http_request = false;
  //入手下手初始化XMLHttpRequest对象
  if(window.XMLHttpRequest) { //Mozilla 阅读器
   http_request = new XMLHttpRequest();
   if (http_request.overrideMimeType) {//设置MiME种别
    http_request.overrideMimeType('text/xml');
   }
  }
  else if (window.ActiveXObject) { // IE阅读器
   try {
    http_request = new ActiveXObject("Msxml2.XMLHTTP");
   } catch (e) {
    try {
     http_request = new ActiveXObject("Microsoft.XMLHTTP");
    } catch (e) {}
   }
  }
  if (!http_request) { // 异常,创立对象实例掉败
   window.alert("不克不及创立XMLHttpRequest对象实例.");
   return false;
  }
  switch(method){
  case 1: http_request.onreadystatechange = processRequest1;break;//选择操作函数
  case 2: http_request.onreadystatechange = processRequest2;break;
  case 3: http_request.onreadystatechange = processRequest3;break;
  }
  // 肯定发送恳求的体例和URL和是不是同步履行下段代码
  http_request.open("GET", url, true);
  http_request.send(null);
}
// 处置前往信息的函数
    function processRequest1() {//操作函数1,调入省
        if (http_request.readyState == 4) { // 判别对象形态
            if (http_request.status == 200) { // 信息已胜利前往,入手下手处置信息
  document.getElementById("statusTxt").innerHTML="";
  addOptionGroup("province",http_request.responseText);
            } else { //页面不正常
                alert("您所恳求的页面有异常。");
            }
        }else {//只需未读取完成
    document.getElementById("statusTxt").innerHTML="正则读取数据中……";
  }
    }

function processRequest2() {//操作函数2,调入市
        if (http_request.readyState == 4) { // 判别对象形态
            if (http_request.status == 200) { // 信息已胜利前往,入手下手处置信息
  document.getElementById("statusTxt").innerHTML="";
  addOptionGroup("city",http_request.responseText);
            } else { //页面不正常
                alert("您所恳求的页面有异常。");
            }
        }else {//只需未读取完成
    document.getElementById("statusTxt").innerHTML="正则读取数据中……";
  }
    }
    function processRequest3() {//操作函数3,输出省市
        if (http_request.readyState == 4) { // 判别对象形态
            if (http_request.status == 200) { // 信息已胜利前往,入手下手处置信息
         document.getElementById("statusTxt").innerHTML="";
         document.getElementById("district").value=http_request.responseText;
            } else { //页面不正常
                alert("您所恳求的页面有异常。");
            }
        }else {//只需未读取完成
    document.getElementById("statusTxt").innerHTML="正则读取数据中……";
  }
    }
function loadProvince() {//载入省
  send_request("select.server.php?action=province",1);//办事端处置法式,操作函数
}

function loadCity() {//载入市
     document.getElementById("district").value="";//清空文本框
     send_request("select.server.php?action=city&id="+document.getElementById("province").value,2);
}

function inputDistrict() {//向文本框输出选定的省市
     send_request("select.server.php?action=district&id="+document.getElementById("province").value+"&id1="+document.getElementById("city").value,3);
  
}
addOption.js

function addOption(objSelectNow,txt,val)
{
  /// 利用W3C尺度语法为SELECT添加Option
  var objOption = document.createElement("OPTION");
  objOption.text= txt;
  objOption.value=val;
  objSelectNow.options.add(objOption);
}
function addOptionGroup(selectId,optGroupString)
{
  var optGroup = optGroupString.split(",");
  var objSelect = document.getElementsByTagName("SELECT");
  var objSelectNow = objSelect[selectId];
  objSelectNow.length = 1;
     /// 成组添加Options
  for (i=1; i<optGroup.length; i++)
  {
   addOption(objSelectNow, optGroup, i);
  }
}



[1] [2] 下一页  

  学会了生成静态网页,现在你应该接触一下XML了,恩,XML也了解了,那么AJAX你也得接触接触吧?AJAX完了....然后...
飘飘悠悠 该用户已被删除
沙发
 楼主| 发表于 2015-4-25 13:01:21 | 显示全部楼层
说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-4 04:08

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表