日期:2014-05-16  浏览次数:20696 次

学习Ajax 1
function click()
{
if (window.XMLHttpRequest)
{
//进入此处则表示是IE7 IE8 火狐 MOZILLA,SAFARI,OP ERA
var xmlhttp = new XMLHttpRequst(); //上述浏览器 可以直接NEW出XMLHttpRequest对象
//由于Mozilla某些版本浏览器相应httprequest缺失mime头的无法工作情况,需要加上下面的句子,假设服务器发送来的头不是text/html,则要进行忽略
 if(xmlhttp.overrideMimeType)
{
	xmlhttp.overrideMimeType("text/xml");
}
else if(window.ActiveXObject)//如果返回的是真,则是IE6,IE5.5,IE5
{
	//实际上 所有的IE都会为真,所以这句要在前面那个IF之后进行判断。IE7 IE8有原生的 XMLHTTPREQUEST对象了
	var activexName = {...};//一堆控件名,此处略
	for(var i=0;i<activeName.length;i++)
	{
		try
		}
			var xmlhttp = new ActiveXObject(activeName[i]);
			break;	
		}
		catch(e)
		{
		}
	}
}
xmlhttp.onreadystatechange=callback; //定义回调方法;
//第三步 设置和服务器交互的相应参数  method+url+同步异步+username+passw
xmlhttp.open("GET","AJAX?name"+某某控件的值,true);
//第四步 设置向服务器发送的数据,如果是post则在此出传参数,不在URL后面加参数了
xmlhttp.send(null);

function callback()

{

//第五步,判断和服务器交互是否完成,以及服务端是否正确返回了数据

if(xmlhttp.readyState==4)

{

if(xmlhttp.status==200)

{

//纯文本数据的接收方法

var message =xmlhttp.responseText;

//XML数据对应的DOM对象的接收方法

//此方法使用有个前提,要求服务器端要设置contenttype为text/xml

//否则无法接收所期望的DOM对象

var domXML=xmlhttp.responseXML;

var div =document.getElementById("message");//message可以是DIV 或者是SPAN

div.innerHTML=message;//采用内联的形式输出结果

}

}

}