Ajax日记
简要讲Ajax 的内容归纳为博客。
AJAX能且仅能从服务器上读取文件,我们使用ajax的时候分为以下几个步骤:
1、 创建ajax对象
2、 链接服务器
3、 发送请求
4、 接收返回值
下面是详细实现过程
<!DOCTYPE>
<html>
<head>
<meta charset = "utf-8" />
<title>ajax</title>
<script type="text/javascript">
window.onload = function(){
var obtn1 = document.getElementById('btn1');
obtn1.onclick = function(){
//1、创建ajax对象
//var oAjax = new XMLHttpRequest();//非IE6
//var oAjax = new ActiveXObject("Microsoft.XMLHTTP");//IE6
//兼容写法
var oAjax = null;
if(window.XMLHttpRequest){
oAjax = new XMLHttpRequest();
}
else{
oAjax = new ActiveXObject("Microsoft.XMLHTTP");
}
//2、链接服务器
//open(方法,url,是否异步)
//同步:一件件事情做。异步:多件事情一起做。
oAjax.open("GET","like.txt",true);
//3、发送请求
oAjax.send();
//4、接收请求 onreadystatechange 查看进度的事件 当oAjax.readyState == 4表示已经完成,而当oAjax.status == 200时,表示接收数据成功
oAjax.onreadystatechange = function(){
if(oAjax.readyState == 4){
if(oAjax.status == 200){
alert("成功"+oAjax.responseText);
}
else{
alert("失败");
}
}
}
}
}
</script>
</head>
<body>
<input id="btn1" type="button" value="读取文件" />
</body>
</html>
以上过程分四步在服务器上读取了like.txt中的文件
同样的方法可以读取josn文件和XML文件
下面是将以上内容封装为函数的代码,可以直接用
function ajax(url,fnSucess,fnFaild){
//1、创建ajax对象
//var oAjax = new XMLHttpRequest();//非IE6
//var oAjax = new ActiveXObject("Microsoft.XMLHTTP");//IE6
//兼容写法
var oAjax = null;
if(window.XMLHttpRequest){
oAjax = new XMLHttpRequest();
}
else{
oAjax = new ActiveXObject("Microsoft.XMLHTTP");
}
//2、链接服务器
//open(方法,url,是否异步)
//同步:一件件事情做。异步:多件事情一起做。
oAjax.open("GET",url,true);
//3、发送请求
oAjax.send();
//4、接收请求 onreadystatechange 查看进度的事件 当oAjax.readyState == 4表示已经完成,而当oAjax.status == 200时,表示接收数据成功
oAjax.onreadystatechange = function(){
if(oAjax.readyState == 4){
if(oAjax.status == 200){
alert("成功"+oAjax.responseText);
fnSucess(oAjax.responseText);
}
else{
fnFaild();
}
}
}
}
函数接收三个参数 :第一个参数为url,请求的服务器地址。第二个参数为fnSucess函数,当请求并接收数据成功的时候执行该函数,该函数接收一个参数,该参数为接收的文件字符串。第三个参数为fnFaild()函数,当请求数据失败的时候,执行该函数。
整个Ajax说的神神叨叨,其实也就用这么点东西。
Ajax日记的更多相关文章
- Yii 1开发日记 -- Ajax实现点击加载下一页
功能实现:先输出一页的内容,然后点击加载下一页,如图 1.控制器中 /** * 消费记录:列出用户购买章节的记录 */ public function actionMyPayHis() { //点击加 ...
- bug日记之---------js中调用另一个js中的有ajax的方法, 返回值为undefind
今天做一个OCR授权的需求, 需要开发一个OCR弹框, 让用户选择是否授权给第三方识别公司(旷世科技)保存和识别用户个人信息, 照片等. 其中用到了在一个js的方法中调用另外一个js的方法, 其中有一 ...
- WebAPI学习日记一:Ajax请求传递参数遇到的问题
首先,本人大学刚毕业,想把自己学习的一些东西记录下来,也是和大家分享,如有不对之处还请多加指正.声明:但凡是我博客里的文章均是本人实际操作遇到的例子,不会随便从网上拷贝或者转载,本着对自己和观众负责的 ...
- 小白日记54:kali渗透测试之Web渗透-补充概念(AJAX,WEB Service)
补充概念 AJAX(异步javascript和XML) Asynchronous javascript and xml 是一个概念,而非一种新的编程语言,是一组现有技术的组合 通过客户端脚本动态更新页 ...
- 学习日记13、ajax同时提交from表单和多个参数
if ($("form").valid()) { $.ajax({ url: "@Url.Action("EditCusAndCusCard")&qu ...
- 学习日记21、IE下的Ajax需要注意的地方
上面这张图片我是封装了一个easyui下拉框,红框出则是动态传入的json数据,这串代码在google下运行不会有任何问题,但是在IE下运行则会提示缺少:,这是因为IE只识别json格式的数据,所以这 ...
- 前端学习日记之HTML、CSS 简单总结
前端学习日记之HTML.CSS 简单总结 标签(空格分隔): html css 前端学习日记 html超文本标记语言 一. h标题标签 h1-h7 <!DOCTYPE html> < ...
- Atitit s2018 s4 doc list dvchomepc dvccompc.docx .docx \s2018 s4 doc compc dtS44 \s2018 s4 doc dvcCompc dtS420 \s2018 s4f doc homepc \s2018 s4 doc compc dtS44\(5 封私信 _ 44 条消息)WebSocket 有没有可能取代 AJAX
Atitit s2018 s4 doc list dvchomepc dvccompc.docx .docx \s2018 s4 doc compc dtS44 \s2018 s4 doc dvcCo ...
- Ajax的实现及使用-zepto
正文 之前归纳了ajax技术的基础知识,汗颜的是这两篇本应该在年初补上的,但因为种种原因,并没有补上.不过还好最近有空,所以开始整理之前的日记.共分为两篇:对于zepto ajax代码的实现解析;对于 ...
随机推荐
- 多个ORACLE HOME的情况,默认的ORACLE HOME是哪个,以及如何更改HOME
如果系统里安装了多个ORACLE产品,那么在注册表里,有可能也会有多个ORACLE HOME,在不设置系统环境变量的情况下,默认情况使用哪个ORACLE HOME? HKEY_LOCAL_MACHIN ...
- UESTC_Can You Help God Wu CDOJ 582
There is a boy named God Wu in UESTC ACM team. One day he is asked to finish a task. The task is tha ...
- hdu 3874 Necklace(bit树+事先对查询区间右端点排序)
Mery has a beautiful necklace. The necklace is made up of N magic balls. Each ball has a beautiful v ...
- redhat6.3 64位更新源(使用网易源)全过程记录
本篇博客参考:http://chinaxiaoyu.diandian.com/post/2013-01-24/40046529897.首先在浏览器中输入http://tel.mirrors.163.c ...
- javac命令详解(下)
摘自http://blog.csdn.net/hudashi/article/details/7058999 javac命令详解(下) -ver ...
- 2、elasticsearch 的安装和插件的安装
1.安装Elasticsearch集群 1.下载elasticsearch-2.0.0.tar.gz,执行tar -zxvf elasticsearch-2.0.0.tar.gz解压 2.修改conf ...
- java面试题集2
JAVA面试题-CORE JAVA部分 1. 在main(String[] args)方法内是否可以调用一个非静态方法? 答案:不能 2. 同一个文件里是否可以有两个public ...
- Cable master(好题,二分)
Cable master Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Tota ...
- Java核心技术,让计算机"一芯多用"的多线程技术
我们在使用计算的时候会感受到计算机好像在同时执行很多任务,这也是我最初接触计算机给我留下的印象,而我们普通人在同一时刻大脑只能思考一件事情(当然不排除一些异能者能够做到一心二用),而且我们在思考完一件 ...
- AJAX最简单的原理以及应用
Ajax是创建快速动态网页的技术,通过后台与服务器少量的数据交互,是网页实现异步更新.也就是在不整个刷新页面的情况下,可以更新网页中的局部区域. 在原始web应用的模式中: 浏览器 以 h ...