he llegado hasta aqui:
Código:
var a = function()
{
// cargar valores por defecto
this.make=function(options)
{
this.options={
method:'POST',
url:'',
parameters:'',
contentType:'application/x-www-form-urlencoded',
response:'text',
}.concat(options || {});
return this;
};
this.process=function()
{
var ajax=this.ajax();
ajax.open(this.options.method,this.options.url+"?"+this.options.parameters,true);
ajax.setRequestHeader("Content-Type", this.options.contentType);
ajax.onreadystatechange=this.ready(ajax);
ajax.send(this.options.parameters);
return this;
};
this.ready=function(ajax)
{
alert(ajax.readyState);
switch(ajax.readyState)
{
case 1:case 2:case 3:
break;
case 4:
{
switch(this.options.response)
{
case 'text':
this.response=ajax.responseText;
break;
case 'XML':
this.response=ajax.responseXML;
break;
}
return this;
break;
}
break;
}
};
this.ajax=function()
{
var xmlHttp;
try { xmlHttp=new XMLHttpRequest();return xmlHttp; }
catch (e) { try { xmlHttp=new ActiveXObject('Msxml2.XMLHTTP');return xmlHttp; }
catch (e) { try { xmlHttp=new ActiveXObject('Microsoft.XMLHTTP');return xmlHttp; }
catch (e) { alert('Your browser does not support AJAX!');return false; }}}
};
};
// ...
y solo me muestra una vez el:
llamada:
Código:
var b = new a();
b.make({
});
b.process();
vamos me muestra un
1, pero no llega a hacer los 4 correspondientes :(
y en IE me sigue petando con el mismo error :(