百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>html5教程> Ajax如何实现网页异步更新
分享文章到:

Ajax如何实现网页异步更新

发布时间:09/01 来源:未知 浏览: 关键词:
这次给大家带来Ajax怎样实现网页异步更新,Ajax实现网页异步更新的留意事项是什么,下面就是实战案例,一起来看一下。

1:ajax的概念

全称:Asynchronous Javascript And Xml

AJAX不是一种新的编程说话,而是一种用于创立更快更好乃至交互性更强的WEB利用程序技术,该技术在98年前后得到了利用。通过AJAX,你的JS可以通过JS的XMLHttpRequest对象在页面不重载的状况下与效劳器直接停止通讯。这样可以在效劳器恳求到想要的数据,而不是整个页面。AJAX的中心就是JS的XMLHttpRequest对象。xhr对象是在IE5中首次引入,它是一种支撑异步恳求的对象。

2:ajax的优势

无刷新更新数据。

异步与效劳器通讯。

基于标准被广泛支撑。

前端与后端别离。

节约带宽。

3:编写步骤

1.创立XMLHttpRequest对象。

所有现代阅读器(IE7+,chrome,firefox,opera,safari)均内建XMLHttpRequest对象。但是IE5、6使用ActiveXObject对象。

function getAjax() {
var  xmlhttp = null;
if(window.ActiveXObject){
         xmlhttp = new ActiveXObject(’Microsoft.XMLHTTP’);
} else if(window.XMLHttpRequest){
         xmlhttp = new XMLHttpRequest();
}
return  xmlhttp;
}

2.翻开与Server的连接,指定发送方式、URL乃至权限等。

open办法:创立新的HTTP恳求,并指定此恳求的办法,URL乃至验证信息。

xhr.open(type, url, async, user, password);

type:HTTP恳求方式,GET、POST等。大小写不敏锐。

url:恳求地址。

async:布尔型,恳求可否为异步方式。默许为true。假如为真,当状态改动时会调取onreadystatechange属性指定的回调函数。(可选)

user:假如效劳器需要验证,此处指定会员名,假如未指定,当效劳器需要验证时,会弹出验证窗口。(少用仅理解)

password:验证信息中的密码部分,假如会员名为空,则此值将会被忽略。(少用仅理解)

注:

在AJAX中,其实我们就是来模拟正常的表单提交数据。正常的表单在POST数据时,会发送Content-Type字段,所以我们在AJAX中就要指定该字段值为application/x-www-form-urlencoded。并且对字段名称和值停止编码处置在发送。使用setRequestHeader:独自指定恳求的某个HTTP头。

注:数据应使用encocdeURIComponent()函数停止编码。

3.发送指令。

send():发送恳求到HTTP效劳器并接收回应。

此办法的同步或异步方式取决于open办法中的async参数,假如async为true,此办法将马上返回,假如为false,此办法将会等候恳求完成或者超不时才会返回。

xhr.send(body);

body:通过此恳求发送的数据。GET恳求设定为null即可。

4.等候并接收效劳器返回的处置结果。

5.客户端接收。

6.开释XMLHttpRequest对象。

4:回调函数

通过onreadystatechange属性指定readystate属性改动时的事件处置回调函数。

xhr.onreadystatechange = function(){}

readyState属性:返回恳求的当前状态。

状态:

0:对象已创立,尚未初始化(未调取open办法)。

1:对象已创立,尚未调取send办法。

2:send办法已调取。但是当前的状态乃至HTTP状态未知。

3:开端接收数据,由于响应乃至HTTP头不全,这时通过responseBody和responseText猎取部分数据会显现错误。

4:数据接收完毕,此时可以通过responseBody和responseText猎取完全的响应数据。

status属性:返回当前恳求的状态码。

200 OK:恳求文档已经寻到,并准确返回。

304 Not Modified:具有一个当地的缓存副本,效劳器端内容与此雷同。

403 Forbidden:恳求者对所恳求的文档不具有响应的权限。

404 Not Found:恳求的文档没寻到。

statusText属性:返回当前恳求的响应行信息。

responseXML属性:将响应信息格局化为XML Document对象返回。

responseText属性:将响应信息作为字符串返回。

5:JS解析JSON

JSON简介:(js文章中有提到)

定义:Javascript Object Notation,一种轻量级的基于文本的数据交流格局,易于人阅读和编写,也能提高网络传输速率。

ES5新增的两个办法:

JSON.parse:将JSON字符串数据转换为JSON对象。

JSON.stringify:将JSON对象转换为JSON字符串。

注:1、阅读器支撑:IE8+。

  2、JSON格局的字符串里面的key或者字符串型的value都必需用双引号包裹。

6:部分数据刷新

操纵响应的DOM节点(例如评论列表的分页结果)

7:事件拜托的利用

事件拜托:利用冒泡机制,将子元素事件拜托给父元素施行(例如某些新闻网站有去除部分会员不喜欢的新闻)

8:前后端别离

后台尽管数据输出和业务逻辑处置,前端负责交互逻辑和界面展现。简便的说:前端静态页面中没有有后台程序代码,后台输出不带有HTML标签的数据。

前后端别离靠ajax来实现数据的交互。(函数分装实现详细的别离,demo中给出)

信赖看了这些案例你已经把握了办法,更多出色请关注百分百源码网其它相关文章!

相关阅读:

怎样解决layer.photos()异步修改图片地址后显示非常的问题

以上就是Ajax怎样实现网页异步更新的具体内容,更多请关注百分百源码网其它相关文章!

打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有150人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板