ajax说新颖也不新颖的一项技术,如果你用过google map服务就会体会到他的优点,当然不能乱用,呵呵!
下面是自己写的一个小例子,仅供参考,见笑!
是调用7e的whois查询
详细内容可去网上搜索~
具体代码如下:
main.html内容
<html>
<HEAD>
<title>利用AJAX调用whois查询</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<META NAME ="keywords" CONTENT="利用AJAX调用whois查询">
<META NAME="description" CONTENT="利用AJAX调用whois查询">
<META NAME="robots" CONTENT="all">
<META name="AUTHOR" content="Anlige">
</HEAD>
<BODY>
<form name="se">
<input type="text" name="domain">
<input type="button" value="查询" onclick="Star(se.domain.value)">
</form>
<div id=whois>
</div>
</script></span></td>
</body>
</html>
<script language="javascript" src="fun.js"></script>
<!--下面的vbscript是解码用的,这里暂时用不到-->
<script language="vbscript">...
Function str2asc(strstr)
str2asc = hex(asc(strstr))
End Function
Function asc2str(ascasc)
asc2str = chr(ascasc)
End Function
</script>
fun.js内容
var oBao;
var obj
//创建组件
function createobj() ...{
if (window.ActiveXObject) ...{
oBao=new ActiveXObject("Microsoft.XMLHTTP");
}
else if (window.XMLHttpRequest) ...{
oBao=new XMLHttpRequest();
}
}
//发送请求
function Star(domain) ...{
//下面定义两个变量,保存用来抓72e的whois查询的url
obj=document.getElementById("whois"); //定位到div
var a="http://www.72e.net/domain/whois/jswhois.aspx?DomainName=";
var b="&SourceHost=www.72e.net&SourcePath=/domain/&ShowDetail=1";
createobj(); //创建XMLHttpRequest
var my_url=a+domain+b; //要请求的url
oBao.open("POST",my_url,true); //post方法请求my_url,异步执行(send完毕可以继续执行后面的代码,不用等待服务器返回结果)
oBao.onreadystatechange = setvalue; //设置事件处理函数
oBao.send(null); //发送请求
}
//事件处理函数
function setvalue()...{
if(oBao.readyState==4)...{ //4代表数据已经从服务器返回
if(oBao.status==200)...{ //200代表页面正常
var strResult =oBao.responseText; //以文本方式取得返回内容
//下面是分离截取的内容,显示我们需要的部分
var c=strResult.search(/<pre>/);
var d=strResult.search(/</pre>/);
var str=strResult.substr(c+5,d-c-5);
obj.innerHTML=str.replace(/__CRLF__/gi,''<br>''); //显示信息
}else...{
obj.innerHTML="服务器返回错误!";
}
}else...{
obj.innerHTML="数据请求中...";
}
}
//解码用,这里暂时用不到
function UrlDecode(str)...{
var ret="";
for(var i=0;i<str.length;i++)...{
var chr = str.charAt(i);
if(chr == "+")...{
ret+=" ";
}else if(chr=="%")...{
var asc = str.substring(i+1,i+3);
if(parseInt("0x"+asc)>0x7f)...{
ret+=asc2str(parseInt("0x"+asc+str.substring(i+4,i+6)));
i+=5;
}else...{
ret+=asc2str(parseInt("0x"+asc));
i+=2;
}
}else...{
ret+= chr;
}
}
return ret;
}