Web/kzcms/themes/edu/js/ajax.js

(开头部分) 2KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

function Ajax(url, args) {
    this.url = url || "";
    this.params = args.parameters || "";
    this.mime = args.mime || "text/html";
    this.onComplete = args.onComplete || this.defaultOnCompleteFunc;
    this.onLoading= args.onLoading || this.defaultOnLoadingFunc;
    this.onError = args.onError || this.defaultOnErrorFunc;
    this.method = args.method || "post";
    //REMIND: yinwm -- 2007/03/30  Cost to much code, refine it later.
    if (typeof(args.sync) == "undefined" || args.sync == null) { 
	this.sync = true;
    } else {
	this.sync = args.sync ? true : false; //NOTE: yinwm -- 2007/03/30 Convert all other ones like string, number to boolean value.
    }
    this.loadData();
}

Ajax.prototype = {
    READY_STATE_COMPLETE : 4,
    getRequest : function () {
	var funcs = [
	    function() {return new ActiveXObject('Msxml2.XMLHTTP')},
	    function() {return new ActiveXObject('Microsoft.XMLHTTP')},
	    function() {return new XMLHttpRequest()},
	];

	var req = null;
	for (var i = 0; i < funcs.length; i++) {
	    var f = funcs[i];
	    try {
		req = f();
		break;
	    } catch (e) {}
	}

	return req || false;
    },

    //NOTE: yinwm -- convert paramater map to string 
    parseParams : function () {
	if (typeof (this.params) == "string") {
	    return this.params;
	} else {
	    var s = "";
	    for (var k in this.params) {
		s += k + "=" + this.params[k] + "&";
	    }
	    return s;
	}
    },

    loadData : function () {
	this.req = this.getRequest();
	
	if (this.req) {
	    this.onLoading();
	    try {
		var loader = this;
		this.req.onreadystatechange = function () {
		    if (loader.req.readyState == loader.READY_STATE_COMPLETE) {
后面还有 33 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。