Litet ajax ramverk som inte vill fungera

JavaScript

1 svar · 354 visningar · startad av vic

Medlem sedan apr. 2006244 inlägg
Trådstart#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?

271 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
134 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)