• XMLHttpRequest Demo


    1 一个XMLHttpRequest简单封装DEMO,详细参考http://www.w3school.com.cn/xmldom/dom_http.asp

    var ajax = {
                request: null,
                options: {
                    method: "",
                    url: "",
                    asyn: null,
                    dataType: "",
                    success: function(obj) { },
                    error: function(msg) { }
                },
                checkOptions: function(opts) {
                    var msg = 0;
                    if (!opts.hasOwnProperty("method")) {
                        msg = -1;
                    }
                    if (!opts.hasOwnProperty("url")) {
                        msg = -1;
                    }
                    if (!opts.hasOwnProperty("asyn")) {
                        opts.asyn = true;
                    }
                    if (!opts.hasOwnProperty("dataType")) {
                        opts.dataType = "text";
                    }
                    if (!opts.hasOwnProperty("success")) {
                        opts.success = function() { };
                    }
                    if (!opts.hasOwnProperty("error")) {
                        opts.error = function() { };
                    }
                    return msg;
                },
                create: function(obj) {
                    var _this = this;
    
                    if (_this.checkOptions(obj) == -1) {
                        alert("method or url is null");
                        return false;
                    }
    
                    if (window.XMLHttpRequest) {
                        this.request = new XMLHttpRequest();
                    } else {
                        this.request = new ActiveXObject("Microsoft.XMLHTTP");
                    }
    
                    _this.options = obj;
    
                    _this.request.onreadystatechange = function() {
                        if (_this.request.readyState == 4) {
                            if (_this.request.status == 200) {
                                var rd;
                                if (_this.options.dataType == "text") {
                                    rd = _this.request.responseText;
                                } else {
                                    rd = _this.request.responseXml;
                                }
                                _this.options.success(rd);
                            }
                            else {
                                var msg = _this.request.status;
                                _this.options.error(msg);
                            }
                        }
                    }
    
                    _this.request.open(_this.options.method, _this.options.url, _this.options.asyn);
                    _this.request.send(null);
                }
    
            }
    
            ajax.create({
                method: "GET",
                url:"xml/xml.xml",
                asyn: true,
                dataType:"text",
                success: function(obj) {
                    alert(obj);
                },
                error: function(msg) {
                    alert(msg);
                }
            });
    
  • 相关阅读:
    Ximarin.Android 百度地图
    利用Chrome浏览器 保存网页成PDF
    SQL 笔记
    windows server 2008 r2 IIS PHP
    自动化分页,HTML代码控制 思想
    simple
    testtitle
    PyQt5中中文问题的不完全解决
    ubuntu下搭建python2.7+PyQt5并实现一个小词典
    opensuse安装深度截图,深度影音和深度播放器
  • 原文地址:https://www.cnblogs.com/xqhppt/p/2278972.html
Copyright © 2020-2023  润新知