js呼叫ajax案例2,使用ok
XMLHttpRequest 是 AJAX 的基礎。
XMLHttpRequest 物件
所有現代瀏覽器均支援 XMLHttpRequest 物件(IE5 和 IE6 使用 ActiveXObject)。
XMLHttpRequest 用於在後臺與伺服器交換資料。這意味著可以在不重新載入整個網頁的情況下,對網頁的某部分進行更新。
建立 XMLHttpRequest 物件
所有現代瀏覽器(IE7+、Firefox、Chrome、Safari 以及 Opera)均內建 XMLHttpRequest 物件。
建立 XMLHttpRequest 物件的語法:
variable=new XMLHttpRequest();
老版本的 Internet Explorer (IE5 和 IE6)使用 ActiveX 物件:
variable=new ActiveXObject("Microsoft.XMLHTTP");
為了應對所有的現代瀏覽器,包括 IE5 和 IE6,請檢查瀏覽器是否支援 XMLHttpRequest 物件。如果支援,則建立 XMLHttpRequest 物件。如果不支援,則建立 ActiveXObject :
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
if (window.XMLHttpRequest)
{
// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest();
}
else {
// code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
下面的使用ActiveXObject("Microsoft.XMLHTTP")建立xmlHttp就可以,弄了半天是瀏覽器的問題。
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
url="http://127.0.0.1:27100/Terminal?t=FaceValidateWithIdCard&serviceId=32101412130&timeout=60&s="+Math.random()*10;
//alert(url)
xmlHttp.onreadystatechange=function()
{
if (xmlHttp.readyState==4 && xmlHttp.status==200)
{
var a=xmlHttp.responseText;
//alert(a)
}
}
xmlHttp.open("GET",url,true); //第三個引數是同步非同步,主執行緒只能非同步
// alert("1")
//xmlhttp.onreadystatechange=favorOK;//傳送事件後,收到資訊了呼叫函式
xmlHttp.send();
// alert("2")