webForumDet fria alternativet

Litet ajax ramverk som inte vill fungera

JavaScript

1 svar · 339 visningar · startad av vic

Medlem sedan apr. 2006244 inlägg
Frågan#1

Hej!
JAg vill inte behöva ladda in ett stort ramverk på flera kb och försöker därför bygga mitt egna lilla mini-ramverk för att göra ajax anrop. Tanken är att det ska anropas på följande sätt:

a = new ajaxService();
a.call('http:/...', 'minCallback');

function minCallback(repsonse) {
 alert(response);
}

JAg har försökt med följande, dock blir alltid this.xmlHttpConnector alltid undefined, vilket jag inte förstår...

function ajaxService() {

	
  	this.argsToCallback = '';
  	this.ajaxCallBackFunction = '';
  	this.xmlHttpConnector = null;

  
	this.call = function(url, callbackFunction, extraArgs) {
    	
    	this.ajaxCallBackFunction = callbackFunction;
		this.argsToCallback = extraArgs;

			
		try {
			this.xmlHttpConnector = new XMLHttpRequest();
		}
		catch(e) {

			try {
				this.xmlHttpConnector = new ActiveXObject("Msxml2.XMLHTTP");
			}
			catch(e) {
				this.xmlHttpConnector = new ActiveXObject("Microsoft.XMLHTTP");
			}
		}
		
		if(this.xmlHttpConnector == null) {
			return false;
		}
		else {

			this.xmlHttpConnector.onreadystatechange = this.handleResponse;
			this.xmlHttpConnector.open("GET",url,true);
			this.xmlHttpConnector.send(null);
		}
  	}
  	
  	this.handleResponse = function() {
		//alert(this.xmlHttpConnector);
		if(this.xmlHttpConnector.readyState==4) {
			this.ajaxCallBackFunction(this.xmlHttpConnector.responseText, this.argsToCallback);
		}
	}
  	
}

Någon som kanske kan ge mig ett tips? Visst skulle jag kunna gör this.xmlHttpConnector till en global variabel istället men det är just det jag inte vill, jag vill kunna göra ett nytt objekt som har sin egen xmlhttpconnector

mvh Vic

Medlem sedan maj 2000444 inlägg
#2

Om du inte vill bygga ett själv, men vill ha ett litet så kanske xhconn kan vara något?

274 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
136 ms — deklarationer (db)
0 ms — hämta statistik (cache)
135 ms — hämta tråd, inlägg och bilagor (db)
136 ms — ändringar (db)