```javascript /** * 發送ajax請求 * @type {Object} * 使用方法如下: * $ajax.request( * method: "post", //請求方式 * url: "index.php", //請求的伺服器地址 * data: "name=itbsl&a... ...
/**
* 發送ajax請求
* @type {Object}
* 使用方法如下:
* $ajax.request(
* method: "post", //請求方式
* url: "index.php", //請求的伺服器地址
* data: "name=itbsl&age=20",//請求時攜帶的參數
* dataType: "xml", //期望伺服器回應的數據
* callback: function(res) { //請求成功後的回調函數
* //處理數據
* }
* );
*/
var $ajax = {
request: function(obj) {
//創建對象
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(obj.method == 'get') {
xmlhttp.open(obj.method, obj.url+"?"+obj.data+"&"+Math.random(), true);
xmlhttp.send();
} if(obj.method == 'post') {
xmlhttp.open(obj.method, obj.url, true);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.send(obj.data);
}
//監視請求的狀態
xmlhttp.onreadystatechange = function () {
if(xmlhttp.readyState == 4 && xmlhttp.status == 200) {
if(obj.dataType == 'xml') {
obj.callback(xmlhttp.responseXML);
} else if(obj.dataType == 'text') {
eval("var res = " + xmlhttp.responseText);
obj.callback(res);
}
}
}
}
}