ajax(一) 初识ajax

来源:互联网 发布:卡牌手游推荐 知乎 编辑:程序博客网 时间:2024/05/20 02:26

Ajax:一种不用刷新整个页面便可与服务器通讯的办法。

发送请求:onreadystatechange

1) 该事件处理函数由服务器触发,而不是用户。

2) 在ajax执行过程中,服务器会通知客户端当前的通信状态。这依靠更新XMLHttpRequest对象的readyState来实现。改变readyState属性是服务器对客户端连接操作的一种方式。每次readyState属性的改变都会触发readystatechange事件。

接收响应:

1、readyState

1)readyState属性表示ajax请求的当前状态,有5个值,分别表示:

0代表未初始化,还没有调用open方法。

1代表正在加载,open方法已被调用,但send方法还没有被调用。

2代表已加载完毕,send已被调用,请求已经开始。

3代表交互中,服务器正在发送响应。

4代表完成,响应发送完毕

2)每次readyState值的改变,都会触发onreadystatechange事件。如果把onreadystatechange事件处理函数赋给一个函数,那么每次readyState值的改变都会引发该函数的执行。

3)readyState值的变化会因浏览器的不同而有所差异。但是,当请求结束的时候,每个浏览器都会把readyState的值统一设为4

2、Status

1)常用状态码及其含义:

404没找到页面

403禁止访问

500内部服务器出错

200一切正常

304没有被修改

2)在XMLHttpRequest对象中,服务器发送的状态码都保存在status属性里。通过把这个值和200或304比较,可以确保服务器是否已发送了一个成功的响应

【例1】使用 XMLHttpRequest 实现 Ajax:写一个链接HelloAjax,运用ajax实现不刷新页面,打印出链接内txt文档里的Hello Ajax!!!

咱们先不用ajax看看效果,代码如下:

index.jsp


helloAjax.txt里就写了一句话:Hello Ajax!!!

当我们运行系统后,点击链接就跳转到了helloAjax.txt页面,显示了Hello Ajax!!!,如图:


现在采用ajax的GET提交方式来实现,代码如下:


运行效果如下图:


下面采用POST方式提交,注意POST方式提交时要设置setRequestHeaderContent-Type的值为application/x-www-form-urlencoded

实现代码如下:


我们在POST提交时传入值name=123运行效果如下图:


0 0
原创粉丝点击