文档介绍:数据库二级联动构思:利用AJAX访问servlet来完成
*第一、父级列表由页面初始完成
并加上onchange="javascript:getData()"事件
注意:getData(obj)为AJAX访问ser
34.
35.
36.
37.
38.
if(){
〃针对
FireFox,Mozillar,Opera,Safari,IE7,IE8xmlhttp=newXMLHttpRequest();
〃针对某些特定版本的mozillar浏览器的BUG进行修正
if(){("text/xml");
}
}elseif(){
〃针对IE6,,IE5
〃两个可以用于创建XMLHTTPRequest对象的控件名称,保存在一个js的数组趾
〃用前面的版本较新
varactivexName=「",""];
for(vari=0;i<;i++){try{
〃取出一个控件名称进行创建,如果创建成功就终止循环
〃如果创建失败,会抛出异常,然后可以继续循环,继续尝试创建
xmlhttp=newActiveXObject(activexName
[i]);
}catch(e){
}
}
}
〃确认XMLHTTPRequest对象创建成功
if(!xmlhttp){
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
alert("XMLHttpRequest对象创建失败!!");return;
}else{
//alert(xmlhttp);
}
〃3、注册回调函数
〃注册回调函数时,需要函数名,不要加括号
〃我们需要将函数名注册,如果加上括号,就会把函数的返回值注册上,这是错误的。
//onreadystatechange为注册回调方法,是保证数据回
来以后,可以找到一个方法去执行
=callback;
〃4、设置连接信息
//open:设置与服务器端连接的信息:
//第一个参数表示HTTP的请求方式,支持所有HT
TP的请求方式,主要使用GET/POST
//第二个参数表示请求的URL地址,GET方式请求的参数也在URL中
//第三个参数表示采用异步还是采同步试交互,true
〃("GET","AJAXServer?name="+userName,true);
//POST方式请求的代码
("POST","servlet/test",true);
//POST方式需要自己设置HTTP的请求头
//:设置请求头
("Content-Type","application/x-www-form-urlencoded");
//POST方式发送数据
//alert(userName);
("id="+id);
67.
〃5、发送数据,开始和服务器端进行交互
〃同步方式下,send这句话会在服务器端数据回来后才执行完
〃异步方式下,send这句话会立即完成执行
//send参数:如果GET方式为null,因为参数已经在URL中了,如果是POST方式,则为参数值
//(null);//GET方式
}
74.
functioncallback(){
〃6、接收响应数据
〃判断对象的状态是交互完成
//readyState状态为5种:
//readyState共有5个状态,实际上HTTP刚建立好的状态是0
〃然后随着不断设置信息并和服务器进行交互,他的readyState
〃的状态是不断的变化的,每次readyState变化,
〃都会去执行onreadystatechange所指定的方法
//--0:表示请求还没有发出去。
//--1:表示open方法成功调用以后,正在处理中
//--2:表示服务器已经应答客户端的请求
86.
〃--3:交互中,Http头信息已经接收,响应