Click here to Skip to main content
15,887,454 members
Articles / Web Development / XHTML
Article

A simple ajax class to use

Rate me:
Please Sign up or sign in to vote.
1.11/5 (3 votes)
21 Dec 2007CPOL 32.3K   18   1
Design a simple to use ajax, for ie,firefox

Introduction

A simple ajax class to use. Design for ie and firefox. It just use to send data and receive it, and deal with the data yourself.

Background

I just write it suit my design.

Using the code

Now, this is the code.

Blocks of code should be set as style "Formatted" like this:

// JavaScript Document
/**
 *  Ajax Class
 *  Designer:	Stephen Liang
**/
var AjaxKtClass = function()
{
	this.xmlHttp = false;
	this.url = "";
	this.updateFun = null;

	this.Create = function(url, updateFun)
	{
		/*@cc_on @*/
		/*@if(@_jscript_version >= 5)
		try{
			this.xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
		}catch(e){
			try{
				this.xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
			}catch(e2){
				this.xmlHttp = false;
			}
		}
		@end @*/
		if(!this.xmlHttp&&typeof XMLHttpRequest != 'undefined'){
			this.xmlHttp = new XMLHttpRequest();
		}
		
		this.url = url;
		this.updateFun = updateFun;
	}

	this.Open = function()
	{
		this.xmlHttp.open("GET", this.url, true);
		this.xmlHttp.onreadystatechange = this.updateFun;
		this.xmlHttp.send(null);
	}
	
	this.Open2 = function(url)
	{
		this.xmlHttp.open("GET", url, true);
		this.xmlHttp.onreadystatechange = this.updateFun;
		this.xmlHttp.send(null);
	}
	
	this.Open3 = function(param)
	{
		this.xmlHttp.open("GET", this.url + param, true);
		this.xmlHttp.onreadystatechange = this.updateFun;
		this.xmlHttp.send(null);
	}
	
	this.GetData = function()
	{
		if(this.xmlHttp.readyState == 4){
			return this.xmlHttp.responseText;
		}
		return null;
	}
}

Use it:
<script language="javascript">
// Ajax Object
var ajaxObj = new AjaxKtClass();
ajaxObj.Create("progress.html", AjaxAct);

// Ajax act function
function AjaxAct()
{
	var ret = ajaxObj.GetData();
	if(ret == null) return;
        // Your progress here
	if(ret=="OK")
	{
	}
}

// Ajax send function
function Send()
{
	ajaxObj.Open();
//or like these
//ajaxObj.Open2("abc.html");
//ajaxObj.Open3("?abc=1");
}
</script>

Points of Interest

If you interest it, please emailt to me: stephen_liang@163.com

History

Keep a running update of any changes or improvements you've made here.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
China China
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions

 
General还不错 Pin
kyle198310-Mar-10 20:11
kyle198310-Mar-10 20:11 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.