/ Published in: JavaScript

Expand |
Embed | Plain Text
// Request class Request = function(){ Request = window.XMLHttpRequest?new XMLHttpRequest():window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):false; Request.fn = function(fn){ if(typeof fn=='string')return new Function(fn); if(typeof fn=='function')return fn; if(typeof fn=='undefined')return new Function(); }; Request.config = { 'xml' : false, '404' : 'File not found' }; Request.success = false; Request.loading = false; Request.error = false; Request.submit = function(obj){ if(Request){ Request.onreadystatechange = function(){ if(Request.status==200){ if(Request.readyState==4){ Response = Request.config['xml']?Request.responseXml:Request.responseText; if(Request.success){ Request.fn(Request.success).call(this, Response, Request); } else { Request.fn(obj.success).call(this, Response, Request); } } else { if(Request.success){ Request.fn(Request.loading).call(this, Request); } else { Request.fn(obj.loading).call(this, Request); } } } else { if(Request.success){ Request.fn(Request.error).call(this, Request.config['404']); } else { Request.fn(obj.error).call(this, Request.config['404']); } }; } Request.open("GET", obj.url, true); Request.send(null); } else obj.error.call(this, Request); }; return Request; }; // Eval code var req = new Request; req.submit({ url : 'plik.xml', xml : false, success : function(res, req){ document.getElementById('p2').innerHTML = res; }, loading : function(){ console.log('loading...'); }, error : function(err){ console.log(err); } });
Comments

You need to login to post a comment.
this script have errors in internet explorer but if changue this lines: if(Request.status==200){ if(Request.readyState==4){
to:
if(Request.readyState==4){ if((Request.status==200)||(Request.status==0)){
that workin in all web browsers but y have and error when I try execute loading : function(){ console.log('loading...'); }, error : function(err){ console.log(err); }
that function not working dont do anything