实现的效果:

这两个Ajax任务可同时实现,也可单独实现。

标准的函数:

var xmlhttp;
function loadXMLDoc(url,ufunc){
if(window.XMLHttpRequest){
xmlhttp = new XMLHttpRequest;
}
else {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} xmlhttp.open("get",url,true);
xmlhttp.send(); xmlhttp.onreadystatechange = ufunc;
}

多个Ajax任务:

function myFunction(){
loadXMLDoc("../文档/2.txt",function(){
if(xmlhttp.readyState == 4 && xmlhttp.status == 200){
document.getElementById("myDiv").innerHTML = '<h2>' + xmlhttp.responseText + '</h2>';
}
});
} function func(){
loadXMLDoc("../文档/1.txt",function(){
if(xmlhttp.readyState == 4 && xmlhttp.status == 200){
document.getElementById("app").innerHTML = '<h2>' + xmlhttp.responseText + '</h2>';
}
});
}

在标准函数中:
1.两个参数:url,cfunc,第一个参数表示请求服务器的文档,第二个参数表示服务器响应时onreadystatechange事件需调用的函数。
2.创建XMLHttpRequest对象。
3.向服务器发送请求,xmlhttp.open("GET",url,true);xmlhttp.send();
4.增加onreadystatechange事件,xmlhttp.onreadystatechange=cfunc;

如此,凡是执行Ajax任务的函数都可以使用该标准函数,只需要自己填写标准函数中的两个参数即可。

多个Ajax任务:
1.使用标准函数
2.编写标准函数中的两个参数,这两个参数均可自行改变,即请求服务器的文档,服务器响应实现的方法都可不同。

完整代码:

<html>
<head>
<script type="text/javascript">
var xmlhttp;
function loadXMLDoc(url,ufunc){
if(window.XMLHttpRequest){
xmlhttp = new XMLHttpRequest;
}
else {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} xmlhttp.open("get",url,true);
xmlhttp.send(); xmlhttp.onreadystatechange = ufunc;
} function myFunction(){
loadXMLDoc("../文档/2.txt",function(){
if(xmlhttp.readyState == 4 && xmlhttp.status == 200){
document.getElementById("myDiv").innerHTML = '<h2>' + xmlhttp.responseText + '</h2>';
}
});
} function func(){
loadXMLDoc("../文档/1.txt",function(){
if(xmlhttp.readyState == 4 && xmlhttp.status == 200){
document.getElementById("app").innerHTML = '<h2>' + xmlhttp.responseText + '</h2>';
}
});
} </script>
</head>
<body> <button type="button" onclick="myFunction()">一个Ajax</button>
<button type="button" onclick="func()">另一个Ajax</button>
<div id="myDiv"><h2>一个Ajax</h2></div>
<div id="app"><h2>另一个Ajax</h2></div> </body>
</html>

欢迎留言讨论。

存在多个 AJAX 任务的更多相关文章

  1. jQuery之ajax实现篇

    jQuery的ajax方法非常好用,这么好的东西,你想拥有一个属于自己的ajax么?接下来,我们来自己做一个简单的ajax吧. 实现功能 由于jq中的ajax方法是用了内置的deferred模块,是P ...

  2. Ajax及跨域

    概念 Ajax Ajax,Asynchronous JavaScript and XML,字面意思:异步的 JavaScript 和 XML,是指一种创建交互式网页应用的网页开发技术. 用于异步地去获 ...

  3. 一个粗心的Bug,JSON格式不规范导致AJAX错误

    一.事件回放  今天工作时碰到了一个奇怪的问题,这个问题很早很早以前也碰到过,不过没想到过这么久了竟然又栽在这里. 当时正在联调一个项目,由于后端没有提供数据接口,于是我直接本地建立了一个 json ...

  4. ABP文档 - Javascript Api - AJAX

    本节内容: AJAX操作相关问题 ABP的方式 AJAX 返回信息 处理错误 HTTP 状态码 WrapResult和DontWrapResult特性 Asp.net Mvc 控制器 Asp.net ...

  5. ajax异步请求

    做前端开发的朋友对于ajax异步更新一定印象深刻,作为刚入坑的小白,今天就和大家一起聊聊关于ajax异步请求的那点事.既然是ajax就少不了jQuery的知识,推荐大家访问www.w3school.c ...

  6. 调用AJAX做登陆和注册

    先建立一个页面来检测一下我们建立的用户名能不能用,看一下有没有已经存在的用户名吗 可以通过ajax提示一下 $("#uid").blur(function(){ //取用户名 va ...

  7. Ajax 概念 分析 举例

    Ajax是结合了访问数据库,数据访问,Jquery 可以做页面局部刷新或者说是页面不刷新,我可以让页面不刷新,仅仅是数据的刷新,没有频繁的刷页面,是现在比较常用的一种方式做页面那么它是怎么实现页面无刷 ...

  8. ajax

    常见的HTTP状态码状态码:200 请求成功.一般用于GET和POST方法 OK301 资源移动.所请求资源移动到新的URL,浏览器自动跳转到新的URL Moved Permanently304 未修 ...

  9. 学习笔记之MVC级联及Ajax操作

    由于刚转型到MVC,MVC的架构模式很多不是很清楚,比如今天就想做个级联的操作,因为之前的ASP.NET的方式是通过:控件-->添加事件-->后台编写级联事件进行触发,但是这个MVC就不同 ...

  10. javascript表单的Ajax 提交插件的使用

    Ajax 提交插件 form.js 表单的下载地址:官方网站:http://malsup.com/jquery/form/ form.js 插件有两个核心方法:ajaxForm()和ajaxSubmi ...

随机推荐

  1. Python生成器、推导式之前襟后裾

    生成器 函数体内有yield选项的就是生成器,生成器的本质是迭代器,由于函数结构和生成器结构类似,可以通过调用来判断是函数还是生成器,如下: def fun(): yield "我是生成器& ...

  2. SQLServer之修改FOREIGN KEY约束

    使用SSMS数据库管理工具修改FOREIGN KEY约束 1.连接数据库,选择数据表->右键点击->选择设计(或者展开键,选择要修改的外键,右键点击,选择修改,后面修改步骤相同). 2.在 ...

  3. SQLServer修改数据列

    修改数据列 在开发和生产过程中,列名的拼写错误或者列名的更改是需要操作数据表的,大多数情况下都是不需要修改的. 以下几种情况下我们并不能直接修改数据列: 1.用于索引的列. 2.用于 CHECK.FO ...

  4. 文本分类实战(九)—— ELMO 预训练模型

    1 大纲概述 文本分类这个系列将会有十篇左右,包括基于word2vec预训练的文本分类,与及基于最新的预训练模型(ELMo,BERT等)的文本分类.总共有以下系列: word2vec预训练词向量 te ...

  5. 012_py之证书过期监测及域名使用的py列表的并集差集交集

    一.由于线上域名证书快要过期,需要进行监测,顾写了一个方法用于线上证书过期监测,如下: import ssl,socket,pprint def check_domain_sslexpired(dom ...

  6. LOJ2514 CEOI2011 Hotel 贪心

    传送门 考虑一个贪心:对于所有人群按照收益从大到小排序,对于每一个人群找到当前能够选择的代价最小的房间成为一组可行订单(如果没有就不可行),最后将这些订单按照收益排序,选其中正的前\(o\)大即可.找 ...

  7. 利用CocoaHttpServer搭建手机本地服务器

    原理 使用CocoaHTTPServer框架,在iOS端建立一个本地服务器,只要电脑和手机连入同一热点或者说网络,就可以实现通过电脑浏览器访问iOS服务器的页面,利用POST实现文件的上传. 实现 1 ...

  8. Shell命令-文件及内容处理之grep(egrep)、join

    文件及内容处理 - grep(egrep).join 1. grep(egrep):文本过滤工具 grep(egrep)命令的功能说明 grep命令是Linux系统中最重要的命令之一,其功能是从文本文 ...

  9. 这才是你想要的 Python 可视化神器

    Plotly Express 是一个新的高级 Python 可视化库:它是 Plotly.py 的高级封装,它为复杂的图表提供了一个简单的语法. 受 Seaborn 和 ggplot2 的启发,它专门 ...

  10. BEX5下新建任务到待办任务

    List<OrgUnit> list = new ArrayList<OrgUnit>(); // 1.查询出执行者 String sql = "select t.f ...