最近在工作的时候总结了一套ajax的简易使用方法,通用性极好,给我的工作带来了不少效率上的提高,先贴出来给大家参考:
一,先建一个ajax.js的文件,文件的内容如下:
var http_request = false;
var callback_func;
function sendRequest(url, argstr, func, method) {
http_request = false;
callback_func = func;
if (window.XMLHttpRequest) { // Mozilla, Safari,...
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {
http_request.overrideMimeType('text/xml');
}
} else if (window.ActiveXObject) { // IE
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!http_request) {
alert('Giving up :( Cannot create an XMLHTTP instance');
return false;
}
http_request.onreadystatechange = alertContents;
if (method == 'GET') {
http_request.open('GET', url + '?' + argstr, true);
http_request.send(null);
} else {
http_request.open('POST', url, true);
http_request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=GBK");
http_request.send(argstr);
}
}
function alertContents() {
if (http_request.readyState == 4) {
if (http_request.status == 200) {
callback_func(http_request.responseText);
} else {
alert('There was a problem with the request.');
}
}
}
二,在页面使用如下代码将js文件包含进来:
<script language=javascript src="ajax.js"></script>
三,在页面调用sendRequest(...)方法:
如:<a href="javascript:sendRequest('hello.jsp',param,function,'GET')" >调用AJAX</a>
或:<input type="button" value="提交" onclick="sendRequest('getInfo.do',param,function,'POST')" />
注释(以第一个为例):
hello.jsp: 这个例子采用ajax通过一个链接请求hello.jsp页面,
param: 为参数,可以为空,也可以不为空,比如name=value&password=123456,也可以通过把一个表单(form)的字段组合起来作为一个字符串传递
过去,
function: 是你自己写的一个函数,用于处理返回的内容,一般的处理是
将返回的内容显示在页面,一个典型的例子:
function search(str){
alert(str); //用于调试.
myId.innerHTML = str;
}
GET: 是请求的方法,简单的说,get代表请求一个资源,post代表提交参数并请求资源.
任何疑问,可以联系本人:diego.liu@163.com