AJAX 随记
程序员文章站
2022-06-24 16:10:11
首先是一个创建ajax的函数:复制代码 代码如下:var http_request=null; function create_ajax(){ &n...
首先是一个创建ajax的函数:
var http_request=null;
function create_ajax(){
http_request = false;
//开始初始化xmlhttprequest对象
if(window.xmlhttprequest) { //mozilla 浏览器
http_request = new xmlhttprequest();
if (http_request.overridemimetype) {//设置mime类别
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) { // 异常,创建对象实例失败
window.alert("不能创建xmlhttprequest对象实例.");
return false;
}
}
然后是调用这个函数来处理ajax
var obj1;
function get_ajax(url,obj) {//初始化、指定处理函数、发送请求的函数
obj1=obj;
create_ajax();
http_request.onreadystatechange =processobj; // 确定发送请求的方式和url以及是否同步执行下段代码
http_request.open("post", url, true);
http_request.send(null);
}
function processobj(){
document.getelementbyid(obj1).innerhtml="loading...";
if (http_request.readystate == 4) { // 判断对象状态
if (http_request.status == 200) { // 信息已经成功返回,开始处理信息
document.getelementbyid(obj1).innerhtml=http_request.responsetext;
} else { //页面不正常
document.getelementbyid(obj1).innerhtml="loading error.";
}
}
}
以上就是ajax的主体,再在你需要用ajax的页面把这段javascript包含进去,就可以方便的调用了:
<script type="text/javascript" src="ajax.js" src="ajax.js" ></script>
welcome.
<div id="d1" onclick="get_ajax('ajax/get1.jsp','d1');">d1</div>
<div id="d2" onclick="get_ajax('ajax/get2.jsp','d2');">d2</div>
<div id="a">d2</div>
'ajax/get1.jsp'和'ajax/get2.jsp',是两个后台获取数据的页面,这样,一点击d1,get1.jsp就会被动态的加载进来,非常方便,当然这只是一个最基本的功能的模型,还可以在上面加上很多功能,大家*发挥吧。
复制代码 代码如下:
var http_request=null;
function create_ajax(){
http_request = false;
//开始初始化xmlhttprequest对象
if(window.xmlhttprequest) { //mozilla 浏览器
http_request = new xmlhttprequest();
if (http_request.overridemimetype) {//设置mime类别
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) { // 异常,创建对象实例失败
window.alert("不能创建xmlhttprequest对象实例.");
return false;
}
}
然后是调用这个函数来处理ajax
复制代码 代码如下:
var obj1;
function get_ajax(url,obj) {//初始化、指定处理函数、发送请求的函数
obj1=obj;
create_ajax();
http_request.onreadystatechange =processobj; // 确定发送请求的方式和url以及是否同步执行下段代码
http_request.open("post", url, true);
http_request.send(null);
}
function processobj(){
document.getelementbyid(obj1).innerhtml="loading...";
if (http_request.readystate == 4) { // 判断对象状态
if (http_request.status == 200) { // 信息已经成功返回,开始处理信息
document.getelementbyid(obj1).innerhtml=http_request.responsetext;
} else { //页面不正常
document.getelementbyid(obj1).innerhtml="loading error.";
}
}
}
以上就是ajax的主体,再在你需要用ajax的页面把这段javascript包含进去,就可以方便的调用了:
复制代码 代码如下:
<script type="text/javascript" src="ajax.js" src="ajax.js" ></script>
welcome.
<div id="d1" onclick="get_ajax('ajax/get1.jsp','d1');">d1</div>
<div id="d2" onclick="get_ajax('ajax/get2.jsp','d2');">d2</div>
<div id="a">d2</div>
'ajax/get1.jsp'和'ajax/get2.jsp',是两个后台获取数据的页面,这样,一点击d1,get1.jsp就会被动态的加载进来,非常方便,当然这只是一个最基本的功能的模型,还可以在上面加上很多功能,大家*发挥吧。
上一篇: 使用ajax跨域调用springboot框架的api传输文件
下一篇: 完成了AJAX树附原理分析