zoukankan      html  css  js  c++  java
  • 原生ajax

    var Ajax={
     2     get: function (url,fn){
     3         var obj=new XMLHttpRequest();  // XMLHttpRequest对象用于在后台与服务器交换数据          
     4         obj.open('GET',url,true);
     5         obj.onreadystatechange=function(){
     6             if (obj.readyState == 4 && obj.status == 200 || obj.status == 304) { // readyState==4说明请求已完成
     7                 fn.call(this, obj.responseText);  //从服务器获得数据
     8             }
     9         };
    10         obj.send(null);
    11     },
    12     post: function (url, data, fn) {
    13         var obj = new XMLHttpRequest();
    14         obj.open("POST", url, true);
    15         obj.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); // 发送信息至服务器时内容编码类型
    16         obj.onreadystatechange = function () {
    17             if (obj.readyState == 4 && (obj.status == 200 || obj.status == 304)) {  // 304未修改
    18                 fn.call(this, obj.responseText);
    19             }
    20         };
    21         obj.send(data);
    22     }
    23 }
    复制代码

    注释:

    1,open() 方法需要三个参数:

     第一个参数定义发送请求所使用的方法(GET 还是 POST)。与 POST 相比,GET 更简单也更快,并且在大部分情况下都能用。然而,在以下情况中,请使用 POST 请求:

    • 无法使用缓存文件(更新服务器上的文件或数据库)
    • 向服务器发送大量数据(POST 没有数据量限制)
    • 发送包含未知字符的用户输入时,POST 比 GET 更稳定也更可靠

     第二个参数规定服务器端脚本的 URL(该文件可以是任何类型的文件,比如 .txt 和 .xml,或者服务器脚本文件,比如 .asp 和 .php (在传回响应之前,能够在服务器上执行任务))。

     第三个参数规定应当对请求进行异步地处理(true(异步)或 false(同步))。

    2,send() 方法可将请求送往服务器。

    3,onreadystatechange 属性存有处理服务器响应的函数。

    4,readyState 属性存有服务器响应的状态信息。每当 readyState 改变时,onreadystatechange 函数就会被执行。

        通过学习对XMLHttpRequest对象又熟悉了一些,哈哈

  • 相关阅读:
    gitee ssh key
    Visual Studio Code自定义快捷键(eclipse习惯)
    Maven settings.xml
    Android Studio
    windows压缩图片
    maven生成项目慢解决办法
    区块链学习专栏
    windows常用目录
    windows常用命令
    jQuery列表选择美化插件uichoose
  • 原文地址:https://www.cnblogs.com/YangJieCheng/p/7119427.html
Copyright © 2011-2022 走看看