Ajax是Asynchronous(异步)JavaScript and XML的意思。
Ajax不是一种编程语言,而是一种独立于Web服务器的Web浏览器技术。
Ajax向服务器发送HTTP请求,服务器返回数据时使用JS修改网页的某部分,XML作为接收服务器数据的格式。
大多数Web应用程序都可以用Ajax重写,来替代传统表单。
一、创建XMLHttpRequest对象:为不同浏览器创建不同 XMLHTTP 对象
function GetXmlHttpObject()
{
var xmlHttp=null; //创建一个作为XMLHttpRequest对象使用的一个
// xmlHttp变量,其值为null;
try
{
// Firefox, Opera 8.0+, Safari(Web标准)
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
// Internet Explorer(微软方式)
try
{
xmlHttp=new ActiveXObject(“Msxml2.XMLHTTP”);
}
catch (e)
{
xmlHttp=new ActiveXObject(“Microsoft.XMLHTTP”);
}
}
return xmlHttp;
}
这个有实例:http://www.w3school.com.cn/php/php_ajax_suggest.asp
演示内容为:当用户向HTML表单输入数据时,网页与Web服务器的通信过程。
我对实例一的认识:
有三张页面:HTML表单、一段JavaScript(clienthint.js)、一张PHP页面
①HTML表单头部
body有:id=txt1;οnkeyup=”showHint(this.value)”
id=txtHint;
②clienthint.js
var xmlHttp //定义XMLHttpRequest对象的XMLHttp变量;
function showHint(str) //每点击一次,就执行一次这个事件;
{//输入域长度为0,清空txtHint的内容;
if (str.length==0)
{
document.getElementById(“txtHint”).innerHTML=””
return
}
xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
{
alert (“Browser does not support HTTP Request”)
return
}
var url=”gethint.php” //发送到的服务器URL
url=url+”?q=”+str //URL带上参数
url=url+”&sid=”+Math.random() //添加随机数,以防服务器使用 缓冲文件
xmlHttp.onreadystatechange=stateChanged //调GetXmlHttpObject函数来创建xmlHttp对象,并在事件触发时执行stateChanged函数
xmlHttp.open(“GET”,url,true) //用给定的URL打开这个对象
xmlHttp.send(null)
}
function stateChanged()
//当xmlHttp对象的状态变为4或者“complete”时,填充TXTHint;
{
if (xmlHttp.readyState==4 || xmlHttp.readyState==”complete”)
{
document.getElementById(“txtHint”).innerHTML=xmlHttp.responseText
}
}
function GetXmlHttpObject()//不同的浏览器创建XMLHttpRequest对象;
③gethint.php
作用:检查名字数组,然后返回对应名字;