AJAX day02

一、AJAX
  1.名词解释
    1.同步(Synchronous)
      在一个任务进行中时,不能开启其他的任务。
      同步访问:浏览器在向服务器发送请求时,浏览器只能等待服务器的响应,不能做其他事情
      出现场合:
        1)地址栏输入网址访问网页
    2)a标记的默认跳转
    3)submit按钮的表单提交
    2.异步(Asynchronous)
      在一个任务进行中时,可以开启其他的任务。
      异步访问:浏览器在向服务器发送请求时,不耽误用户在网页上做其他的操作。
      出现场合:
        1)用户名重复验证
    2)搜索建议
    3)聊天室
    4)股票走势图
  2.什么是AJAX
    AJAX:Asynchoronous Javascript And Xml
         异步的         js         和  xml
    本质:使用js提供的异步对象(XMLHttpRequest),异步的向服务器发送请求,
          并接收响应的数据。
      AJAX中,可以无刷新的来更改页面中布局内容。
  3.异步请求的步骤
    1)创建AJAX对象 (xhr)
      标准创建:var xhr=new XMLHttpRequest();
      IE8以下:var xhr=new
      ActiveXobject("Microsoft.XMLHttp");
      通过window.XMLHttpRequest来判断浏览器是否支持标准创建。
      如果不支持标准创建,那么window.XMLHttpRequest的值为null.
      ex:
      if(window.XMLHttpResquest){
    var xhr=new XMLHttpRequest();
      }else{
    var xhr=new ActiveXObject("Microsoft.XMLHttp");
      }
      练习:将创建异步对象的步骤封装到一个函数中,函数名createXhr(),
      在函数体内将创建好的异步对象返回到函数外

    2)绑定监听事件
      1.readyState属性
        作用:用于表示xhr对象的请求状态
    值:0-4 表示5个不同状态
        0:请求尚未初始化
        1:已经打开到服务器的连接,正在发生请求
        2:接收响应头
        3:接收响应主体
        4:接收响应数据成功
        注意:当readyState的值为4的时候,才表示所有的响应都已经接收完成
     2.status属性
       作用:表示服务器的响应状态
       值:200
          当status的值为200时,表示服务器已经正确处理了请求并给出了响应
     3.onreadystatechange-事件
       作用:当xhr对象的readyState属性值发生改变时,要自动激发的操作(事件)
       语法:xhr.onreadystatechange=function(){
        if(xhr.readyState==4&&xhr.status==200)
        {
            var result=xhr.responseText;
            console.log(result);
        }
    }
    3)打开链接(创建请求)
    open() 作用:打开链接
    语法:xhr.open(method,url,isAsyn);
    1.method 请求方法
      string类型:get/post
    2.url 请求地址
      string类型
    3.isAsyn
      boolean类型:true(异步)/false(同步)

    4)发送请求
        send() 发送请求
    语法:xhr.send(body)
    body:请求主体
    如果没有请求主体的话,body位置放null。
    如果有请求主体,则将数据放于body位置处。

练习:1.在demo.js文件中创建接口(ajaxExer),在接口中响应“这是我的第一个ajax练习”
      2.新建一个网页,网页中创建一个按钮和一个div,点击按钮时异步的向ajaxExer接口发送请求,
      并将响应回来的结果显示在div元素中。

  4.使用get提交方式,发送请求数据(带参数)
    
    练习:
    1.在demo.js中创建login接口,在接口将用户名称获取,并响应输出获取到的用户名
    2.创建一个login.html,在网页中创建一个用户名输入框和一个按钮,
    点击按钮时,异步地将用户名称(将用户名以参数的方式拼接在url后)提交给服务器端(login接口).

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值