AJAX调用代码实例

if (typeof CNLive == "undefined")
	CNLive = {};

CNLive.AJAX2 = {
	xmlRequest : null,
	requestUrl : "",
	initRequest : function(method) {
		this.xmlRequest = new XMLHttpRequest();
	},
	sendRequest : function(method) {
		if (this.xmlRequest == null) {
			this.initRequest(method);
		}
		if ("withCredentials" in this.xmlRequest) {
			this.xmlRequest.open(method, this.requestUrl, true);
		} else if (typeof XDomainRequest !== "undefined") {
			this.xmlRequest = new XDomainRequest();
			this.xmlRequest.open(method, this.requestUrl);
		} else {
			this.xmlRequest = null;
			return;
		}
		if (this.xmlRequest == null)
			return;
		this.xmlRequest.onload = function() {
			var data = CNLive.AJAX2.xmlRequest.responseText;
			var json = eval("(" + data + ")");
			if (json) {
				CNLive.MovieList.handleMovieList(json);
			}
		}
		this.xmlRequest.send();
	}
};

CNLive.AJAX = {
	xmlRequest : null,
	requestUrl : "",
	initXMLRequest : function() {
		if (window.ActiveXObject) {
			this.xmlRequest = new ActiveXObject("Microsoft.XMLHTTP");
		} else {
			if (window.XMLHttpRequest) {
				this.xmlRequest = new XMLHttpRequest();
			}
		}
	},
	sendHTTPRequest : function() {
		var url = this.requestUrl;
		if (this.xmlRequest) {
			this.xmlRequest.open("POST", encodeURI(url), true);
			this.xmlRequest.onreadystatechange = this.requestStateChange;
			this.xmlRequest.setRequestHeader("If-Modified-Since", "0");
			this.xmlRequest.send(null);
		}
	},
	requestStateChange : function() {
		var xmlRequest = CNLive.AJAX.xmlRequest;
		if (xmlRequest.readyState == 4) {
			if (xmlRequest.status == 200) {
				var requestReturnStr = xmlRequest.responseText;
				var json = eval("(" + requestReturnStr + ")");
				if (json) {
					CNLive.MovieList.handleMovieList(json);
				}
			}
		}
	}
};


  

posted @ 2014-03-19 16:20  浮生如斯  阅读(196)  评论(0编辑  收藏  举报