zoukankan      html  css  js  c++  java
  • js 发送ajax请求(XMLHttpRequest)

    <!DOCTYPE html>
    <html>

    <head>
    <title></title>
    <script type="text/javascript">
    ajax({
    url: "http://localhost:8080/save",
    type: "POST",
    data: {},
    dataType: "json",
    username: 'sss',
    success: function(response, xml) {
    // 此处放成功后执行的代码
    debugger;
    },
    fail: function(status) {
    // 此处放失败后执行的代码
    debugger;
    }
    });

    function ajax(options) {
    options = options || {};
    options.type = (options.type || "GET").toUpperCase();
    options.dataType = options.dataType || "json";
    var params = formatParams(options.data);
    //创建 - 非IE6 - 第一步
    if (window.XMLHttpRequest) {
    var xhr = new XMLHttpRequest();
    } else {
    //IE6及其以下版本浏览器
    var xhr = new ActiveXObject('Microsoft.XMLHTTP');
    }
    //接收 - 第三步
    xhr.onreadystatechange = function() {
    if (xhr.readyState == 4) {
    var status = xhr.status;
    if (status >= 200 && status < 300) {
    options.success && options.success(xhr.responseText, xhr.responseXML);
    } else {
    options.fail && options.fail(status);
    }
    }
    } //连接 和 发送 - 第二步
    if (options.type == "GET") {
    xhr.open("GET", options.url + "?" + params, true);
    xhr.send(null);
    } else if (options.type == "POST") {
    xhr.open("POST", options.url, true); //设置表单提交时的内容类型
    xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xhr.send(params);
    }
    }
    //格式化参数
    function formatParams(data) {
    var arr = [];
    for (var name in data) {
    arr.push(encodeURIComponent(name) + "=" + encodeURIComponent(data[name]));
    }
    arr.push(("v=" + Math.random()).replace(".", ""));
    return arr.join("&");
    }
    </script>
    </head>

    <body>
    </body>

    </html>

  • 相关阅读:
    沙尘天气,但还是要坚持锻炼
    为了欧冠,堕落两天
    NRF24L01测试板子完成了
    昨天参加ti的研讨会了
    自我安慰一下
    功率W与dBm的对照表及关系
    短时间提高英语口语方法
    看了一个星期的欧洲杯,熬阿
    最近比较忙,项目较累
    后台获取js赋给服务器控件的值
  • 原文地址:https://www.cnblogs.com/mingjian/p/5808847.html
Copyright © 2011-2022 走看看