Ошибка при передаче данных с помощью Ajax

Статус
Закрыто для дальнейших ответов.

POLTER

Active Member
Регистрация
03.09.2006
Сообщения
29
Здравствуйте!!
Столкнулся с такой проблемой:
При передаче данных с помощью аякса все работает, но IE пишет в статусной строке "выполнено, но с ошибками". В других броузерах все ок..
Код:
Код:
/*
url-loading object and a request queue built on top of it
*/

/* ng object */
var Ajax=new Object();

Ajax.READY_STATE_UNINITIALIZED=0;
Ajax.READY_STATE_LOADING=1;
Ajax.READY_STATE_LOADED=2;
Ajax.READY_STATE_INTERACTIVE=3;
Ajax.READY_STATE_COMPLETE=4;


/*--- content loader object for cross-browser requests ---*/
Ajax.send=function(url,onload,method,params){
  this.req=null;
  this.onload=onload;
  this.loadXMLDoc(url,method,params,'application/x-www-form-urlencoded');
}

Ajax.send.prototype.loadXMLDoc=function(url,method,params){
  if (window.XMLHttpRequest){
	this.req=new XMLHttpRequest();
  } else if (window.ActiveXObject){
	this.req=new ActiveXObject("Microsoft.XMLHTTP");
  }
  if (this.req){
	try{
	  var loader=this;
	  this.req.onreadystatechange=function(){
		Ajax.send.onReadyState.call(loader);
	  }
	  this.req.open(method,url,true);
	  this.req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	  this.req.send(params);
	}catch (err){
	  this.error.call(this);
	}
  }
}


Ajax.send.onReadyState=function(){
  var req=this.req;
  var ready=req.readyState;
  var httpStatus=req.status;
  if (ready==Ajax.READY_STATE_COMPLETE){
	if (httpStatus==200 || httpStatus==0){
	  this.onload.call(this);
	}else{
	  this.error.call(this);
	}
  }
}

Ajax.send.prototype.error=function(){
  alert("error fetching data!"
	+"\n\nreadyState:"+this.req.readyState
	+"\nstatus: "+this.req.status
	+"\nheaders: "+this.req.getAllResponseHeaders());
}
Ошибка конкретно происходит при выполнении вот этой строчки:
Код:
var httpStatus=req.status;
req.status существует, все нормально, когда подставляю вместо него например 200 то все работает..
не знаете, в чем может быть трабла?
спасибо заранее!
 

v0rbis

selfcoded
Регистрация
02.05.2005
Сообщения
923
наиболее простой выход - а нужен ли тебе статус?

попробуй мой код.
 

Вложения

  • 1,2 КБ Просмотры: 87

POLTER

Active Member
Регистрация
03.09.2006
Сообщения
29
наиболее простой выход - а нужен ли тебе статус?

попробуй мой код.
Хмм. а ведь у тебя в коде тоже есть
httpStatus = xhr.status;

Вообще странно. Вот в этом приаттаченном скрипте почти тоже самое, но ошибки не возникает..
 

v0rbis

selfcoded
Регистрация
02.05.2005
Сообщения
923
может к делу не относится, но вот
Код:
this.req=new ActiveXObject("Microsoft.XMLHTTP");
плохой это объект. у меня другая версия создается. по новее.
 
Статус
Закрыто для дальнейших ответов.
Верх Низ