<html>
<body>
<script type="text/javascript">
function ajaxFunction() {
var xmlHttp;
try {
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e) {
// Internet Explorer
try {
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e) {
try{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e)
{
alert("您的浏览器不支持AJAX!");
return false;
}
}
}
xmlHttp.onreadystatechange=function()
{
if(xmlHttp.readyState==4)
{
document.myForm.time.value=xmlHttp.responseText;
}
}
xmlHttp.open("GET","time.asp",true);
xmlHttp.send(null);
}
</script>
<form name="myForm">
用户: <input type="text" name="username" onkeyup="ajaxFunction();" />
时间: <input type="text" name="time" />
</form>
</body>
</html>
"time.asp" 的脚本:
<%
response.write("异步请求返回得数据");
%>
注意:
1采用get提交就send(null) ,采用post提交用send(ulr)如:
xmlHttp.open("GET","login.jsp?name=admin$pass=sa");
xmlHttp.send(null);
而POST方法是:
xmlHttp.open("POST","login.jsp");
xmlHttp.setRequestHeader("Content-type","appliction-x-www-form-urlencoded");//重置头部(不可缺少得步骤)
xmlHttp.send(“name=admin$pass=sa”);
2 readyState 属性可能的值:以及其含义
状态 描述
0请求未初始化(在调用 open() 之前)
1请求已提出(调用 send() 之前)
2请求已发送(这里通常可以从响应得到内容头部)
3请求处理中(响应中通常有部分数据可用,但是服务器还没有完成响应)
4请求已完成(可以访问服务器响应并使用它).
.3创建XMLHttpRequest对象的方法(此函数的作用是解决为不同浏览器创建不同的 XMLHTTP 对象的问题)
function GetXmlHttpObject(){
var xmlHttp=null;
try {
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e) {
// Internet Explorer
try {
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e) {
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}
4 异步调用返回结果为响应对象输出得结果 即: response.wirte(Object);
5VBscript如何加载XML文件。
<%
response.expires=-1
q=request.querystring("q")
set xmlDoc=Server.CreateObject("Microsoft.XMLDOM")
xmlDoc.async="false"
xmlDoc.load(Server.MapPath("cd_catalog.xml"))
set nodes=xmlDoc.selectNodes("CATALOG/CD[ARTIST='" & q & "']")
for each x in nodes
for each y in x.childnodes
response.write("<b>" & y.nodename & ":</b> ")
response.write(y.text)
response.write("
")
next
next
%>
5使用js设定Table奇偶行得样式。
<%
var mytable = document.getElementById("mytable");
for(var i=0;i<mytable.rows.length;i++)
{
if(i%2==0)
mytable.rows.className="cssName";
}
%>