文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

异步编程|五分钟让你学会局部刷新Ajax技术

2024-12-03 17:37

关注

 前言

Ajax是Asynchronous JavaScript and XML的缩写,是JavaScript、XML、CSS、DOM等多个技术的组合。Ajax的工作原理是一个页面的指定位置可以加载另一个页面所有的输出内容,这样就实现了一个静态页面也能获取到数据库中的返回数据信息了。所以Ajax技术实现了一个静态网页在不刷新整个页面的情况下与服务器通信,减少了用户等待时间,同时也降低了网络流量,增强了客户体验的友好程度。本文将为大家详细介绍关于Ajax的工作原理以及实现步骤。

1. Ajax的概念?

「以前浏览器如何实现通信呢:」

Jsp页面发送请求--->servlet进行接收--->数据放到域对象--->转发给jsp页面

同步的发送请求:这个请求的特点,我们每一次的转发,浏览器都要重新渲染整个页面、假设我的页面有100k的数据,只有1k的数据需要刷新,如果使用转发的方式的话那么每一次渲染的数据都是100k,这样浏览器的渲染压力就变大了

「Ajax技术实现通信:」

引入Ajax:假设我们使用了Ajax的技术的话,那么我们这100k的数据我们有99k的数据都不需要刷新,只是需要刷新这1k的数据,这就是Ajax

在一开始的时候,所有的浏览器并不支持所谓的局部刷新技术,而且一开始大多数的浏览器并不看好这门技术,这个时候微软首先就在IE浏览器中引入了异步请求的这个概念,到后来看到了Ajax在浏览器上的优秀表现,于是其他的浏览器厂商也就引入了Ajax这个技术

含义:Ajax是用于网页上面进行局部刷新的一门技术

2、Ajax技术的优缺点

「Ajax技术优点:」

「Ajax技术缺点:」

3、Ajax技术能干嘛?

「主要作用:」

4、Ajax技术的具体使用

「使用步骤:」 

创建获取Ajax对象的方法

  1. function getAjax () { 
  2.     var ajax; 
  3.     try{ 
  4.      ajax=new ActiveXObject("microsoft.xmlhttp"); 
  5.     }catch(e){ 
  6.      try{ 
  7.       ajax=new XMLHttpRequest(); 
  8.      }catch(e){ 
  9.       alert('异步都没有 换浏览器吧....'); 
  10.      } 
  11.     } 
  12.     return ajax; 
  13.   } 

获取Ajax对象

  1. var ajax=getAjax();  

准备发送Ajax请求

  1. ajax.open("GET","${pageContext.request.contextPath}/dates.action"); 

发送Ajax请求

  1. ajax.send(null); 

监听Ajax中4种状态

  1. ajax.onreadystatechange=function(){ 
  2.         if(ajax.readyState==4){ / 
  3.     } 

判断服务器是否成功响应

  1. if(ajax.status==200){//说明服务器的响应是正确的 
  2.         var time=ajax.responseText; 
  3.         //要将这个数据直接赋值给一个一个标签 
  4.         document.getElementsByTagName('span')[0].innerText=time
  5.       } 

Get方法数据传输(放到url后面)

  1. ajax.open("GET","${pageContext.request.contextPath}/dates.action?userName=qianyu&password=123"); 

Post方式发送请求和数据

  1. //设置请求头        
  2. ajax.setRequestHeader("Content-type","application/x-www-form-urlencoded"); 
  3. //发送数据 
  4. ajax.send("userName=qianyu&password=123"); 

结语

本篇关于Ajax的介绍就先到这里结束了,后续会出更多关于Ajax系列更多文章,谢谢大家支持!

 

来源:浅羽的IT小屋内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯