概述AJAX

概述AJAX

Ajax即Asynchronous Javascript And XML异步JavaScript和XML,是指一种创建交互式网页应用的网页开发技术。是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术

Ajax技术的组成

  • 运用XHTML+CSS来数据显示
  • 运用JavaScript操作DOM(Document Object Model)来执行页面的部分更新及动态效果
  • 运用XML和XSLT进行数据交互
    无效 良构 有效
  • 运用XMLHttpRequest【浏览器上的组件】与网页服务器进行异步资料交换

最后使用JavaScript绑定一切
###同步和异步
同步会导致客户端的不连续体验,这对客户端不够友好,使用Ajax就是将同步造成的不连续客户体验转换为连续的客户体验

异步可以达到

  • 减轻服务器的压力,AJAX采用的是按需取数的原则,以最大程序的减少冗余请求和影响对服务器造成的负担
  • 无刷新页面可以减少用户等待事件,缓解客户等待心里,以带来更友好的用户体验
  • 进一步促进页面呈现和数据的分离

Ajax编程模型

AJAX中应用核心技术有JavaScript、XMLHttpRequest对象、DOM和XML/json

  • 微软XMLHttpRequest是XMLHTTP组件的对象,通过这个对象只同服务器进行数据层面的交换,而不用每次都刷新界面
  • JavaScript一直定位为客户端的脚本语言,应用最多的是表单数据的校验,使用AJAX后可以通过JavaScript操作XMLHttpRequest来和数据库交互
  • DOM是提供给html和xml使用的一组API,提供了文件的表述结果,并可以利用它改变其中的内容和可见物。脚本语言通过DOM才可以和页面进行交互
  • XML可以规范的定义结构化数据,曾经是数据传输和文档符合统一的标准,使用XML表述的数据和文档可以使用所有应用共享

AJAX编程实现

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8">
            <title>Title</title>
            <script>
                var xhr=null;
                function fff(){
   
                let nameErr=document.getElementById("nameErr");
                nameErr.innerHTML="";
            }
                function ff(){
     //要求页面种必须有一个用户事件触发初始化函数的执行
                //获取用户在<input name="name">中输入的数据
                let pname=document.getElementById("pname").value;
                createXHR();   //按照不同的浏览器创建Ajax引擎XMLHttpRequest对象
                if(xhr){
   
                xhr.open('GET','product.do?action=exists&name='+pname,true)//打开连接
                xhr.onreadystatechange=callback;//注册回调事件处理函数,用于处理readyState变更
                xhr.send();  //发送请求
            }else{
   
                alert('您的浏览器不支持异步操作!');
            }
            }
                function callback(){
     //定义回调事件处理函数
                let nameErr=document.getElementById("nameErr");
                //readyState有0-4共5种准备状态值,当变化后则触发这个函数执行

                if(4==xhr.readyState){
     //判断准备状态值是否为4,4表示下载响应完毕
                if(200==xhr.status){
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值