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

    function ajax2() {
    	var ajaxData = {
    		type: arguments[0].type || "GET",
    		url: arguments[0].url || "",
    		async: arguments[0].async || "true",
    		data: arguments[0].data || null,
    		dataType: arguments[0].dataType || "text",
    		contentType: arguments[0].contentType || "application/x-www-form-urlencoded",
    		beforeSend: arguments[0].beforeSend || function () { },
    		success: arguments[0].success || function () { },
    		error: arguments[0].error || function () { }
    	}
    	ajaxData.beforeSend()
    	var xhr = createxmlHttpRequest();
    	xhr.responseType = ajaxData.dataType;
    	xhr.open(ajaxData.type, ajaxData.url, ajaxData.async);
    	xhr.setRequestHeader("Content-Type", ajaxData.contentType);
    	xhr.send(convertData(ajaxData.data));
    	xhr.onreadystatechange = function () {
    		if (xhr.readyState == 4) {
    			if (xhr.status == 200) {
    				ajaxData.success(xhr.response)
    			} else {
    				ajaxData.error()
    			}
    		}
    	}
    }
    
    function createxmlHttpRequest() {
    	if (window.ActiveXObject) {
    		return new ActiveXObject("Microsoft.XMLHTTP");
    	} else if (window.XMLHttpRequest) {
    		return new XMLHttpRequest();
    	}
    }
    
    function convertData(data) {
    	if (typeof data === 'object') {
    		var convertResult = "";
    		for (var c in data) {
    			convertResult += c + "=" + data[c] + "&";
    		}
    		convertResult = convertResult.substring(0, convertResult.length - 1)
    		return convertResult;
    	} else {
    		return data;
    	}
    }
    

      

  • 相关阅读:
    小议如何使用APPLY
    SQLServer复制(二)--事务代理作业
    T-SQL—理解CTEs
    jdbc与java.sql
    java设计模式之中介者模式
    fread函数和fwrite函数
    Linux多线程编程(不限Linux)
    poj 3320 技巧/尺取法 map标记
    poj 1260 dp
    HDU 4311 前缀和
  • 原文地址:https://www.cnblogs.com/ligulalei/p/10838021.html
Copyright © 2011-2022 走看看