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) { // 判定对象状态