宝哥软件园

Ajax原理和应用案例快速入门教程

编辑:宝哥软件园 来源:互联网 时间:2021-08-21

本文阐述了Ajax的原理和应用。分享给大家参考,如下:

Ajax原理:页面不刷新时,使用XMLHttpRequest对象发送HTTP请求,然后根据返回的内容进行相应的业务逻辑

要使用Ajax:

(1)创建XMLHttpRequest对象(2)发送http请求(3)根据服务器返回的内容执行相应的操作。

一步一步说!

1.创建XMLHttpRequest对象

首先看看w3c给出的信息

这里写图片描述

也就是说,如果要使用XMLHttpRequest对象,还必须考虑浏览器的兼容性,这样就可以封装一个方法来创建XMLHttpRequest对象。

//创建XMLHttpRequest对象functioncreatexhr(){ var xhr=null;if(窗口。XMLHttpRequest){ xhr=new XMLHttpRequest();//Google、Firefox等浏览器} else if(window . ActiveX object){ xhr=new ActiveX object(' Microsoft . xmlhttp ');//ie低版本}返回xhr}2.发送Http请求

Http简介:

学过http请求的同学应该知道,一个简单的请求应该包含这些部分,比如请求方法、主机、路径、协议版本等。

Telnet发送http请求截图:

这里写图片描述

Ajax中的Http请求:

这里只给出了请求方法和路径。但是也有一种请求模式,分为同步和异步。不管同步和异步的区别,true表示异步,false表示同步。

xhr.open('GET ',')。/05-ajax-vote.php ',true);//确定请求的路径xhr . send(null);//发送带有空白数据的请求:

Ajax异步投票程序

文件结构图:

这里写图片描述

05-ajax-vote.html文件:

点击投票按钮,调用投票功能,然后佩戴xhr对象,发送http请求。这里使用异步,实现状态回调功能,然后判断投票是否成功。

!doctype html head metharset=' utf-8 ' meta http-equiv=' x-ua-compatible ' content=' ie=edge ' title no refresh voting interface/title link rel='样式表' href=' '/head script//create XMLHttpRequest对象functioncreatexhr(){ var xhr=null;if(窗口。XMLHttpRequest){ xhr=new XMLHttpRequest();//Google、Firefox等浏览器} else if(window . ActiveX object){ xhr=new ActiveX object(' Microsoft . xmlhttp ');//ie低版本}返回xhr} //ajax投票函数vote(){ //1,创建xhr对象var xhr=createXhr();//2.确保请求方法、路径和请求模式是异步的xhr.open ('get ',')。/05-Ajax-vote.php ',true);//3.发送请求xhr . send(null);//4.设置回拨XHR。onreadystatechange=function(){//如果准备状态为4,则表示执行结束if(this.readyState==4){ //根据服务器if (XHR)返回的ID提示用户投票成功。responsetext==' 1') {alert('投票成功')}else{ alert('投票失败');}}} }/scriptbody h1没有刷新投票接口/h1img src=' http:/Lin . jpg '/p a href=' JavaScript 3360 void(0);'rel=' external no follow ' onclick=' vote();'投票/a /p/body/html05-ajax-vote.php文件:

以随机数的形式模拟投票是否成功。如果成功,在05-ajax-vote-res.txt文件中添加1,返回1;如果失败,则返回0。

?Php/** * ajax投票程序* @ authorwebbc */if (rand (0,10)4){ echo ' 0 ';//返回“投票失败”ID } else { $ number=file _ get _ contents('。/05-Ajax-vote-RES . txt’);$ numberfile_put_contents('。/05-ajax-vote-res.txt ',$ number);回声“1”;//返回“投票成功”标识}?渲染:

这里写图片描述

同步和异步的区别:

同步:当xhr对象发送请求时,该页面的脚本执行被中断,它将等待请求(05-ajax-vote.php)的执行完成,然后返回断点,在发送请求后继续操作。

异步:当xhr对象发送请求时,它不需要等待发出的请求(05-ajax-vote.php)被执行,而是从发送请求的后续语句继续执行。

注意:如果异步请求一个地址,如果要使用地址返回的内容,必须设置一个状态回调函数,在回调函数中操作服务器返回的内容,请求完成后执行。

更多对ajax相关内容感兴趣的读者可以查看本网站专题:《jquery中Ajax用法总结》、《JavaScript中ajax操作技巧总结》、《PHP+ajax技巧与应用小结》和《asp.net ajax技巧总结专题》

我希望这篇文章对ajax编程有所帮助。

更多资讯
游戏推荐
更多+