请高手帮我解释一下这段JavaScript代码

来源:百度知道 编辑:UC知道 时间:2024/05/13 18:36:27
哪位高手能帮我详细讲解一下这段代码....
function checkTeamNo(flag){
var teamNo = document.forms[0].teamNo.value;
var url = "./switchdo.do?prefix=/finance&page=/bxTeamNoCheck.do";
var arg = "teamNo=" + teamNo;
http_requestTrip = false;
if (window.XMLHttpRequest) { // Mozilla, Safari,...
http_requestTrip = new XMLHttpRequest();
if (http_requestTrip.overrideMimeType) {
http_requestTrip.overrideMimeType("text/xml");
}
} else if (window.ActiveXObject) { // IE
try {
http_requestTrip = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_requestTrip = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!http_requestTrip) {
alert("Giving up, Cannot cre

楼上解释的废话连篇

意思就是点击验证的时候不会显式的去刷新页面,而是直接在后面通过ie的ActiveX控件XMLHTTP 或是火狐的XMLHttpRequest对象访问要验证的后台程序.
做到了无刷新

呀呀呀,这个javaScript可不是一般的东东了..
一般我们用javaScript主要是用于表单提交验证或者是一些人性化的提示.都是由浏览器全权负责运行.
而这个javaScript,它关系到服务器交互了.很特殊的东西,所以它还有其他的名字,就是堂堂的ajax.异步请求无刷新效果..
在这里我也不太方便每句来写个注释.
可以在线聊或者你自己去看看ajax的东西能掌握得更加全面.

事实上ajax要实现异步请求,几个必须的准备就是.
1,XMLHttpRequest ---请求对象
你上面那一个N长的IF就是为了创建这个东西.
if (window.XMLHttpRequest)
从这里开始,为什么有这么长呢,主要就是为了处理浏览器的兼容问题,什么
IE啊,火狐啊.IE又分IEX等等,所以就这么长了.

2,请求发到哪去了,需要指定一个URL,通过请求对象的OPEN方法发送.
你的代码就是这句:http_requestTrip.open("POST", url, true);

3,发送之后怎么得到响应呢,就根据状态的不同可得.
你的代码:
http_requestTrip.onreadystatechange = function() {processTextResponse(flag);}
对应的方法:processTextResponse里面关键的几句:
if (http_requestTrip.readyState == 4) {
if (http_requestTrip.status == 200) {
var msgflg = http_requestTrip.responseText;

htt