472,114 Members | 1,472 Online
Bytes | Software Development & Data Engineering Community
Post +

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 472,114 software developers and data experts.

[XMLHttpRequest] - onreadystatechange work in IE nothin in mozilla

hello,

I'm writing a program using XMLHttpRequest that works in the main case
on IE and mozilla but this code works only on IE ... why ?

probleme is located at mark 'HERE' at the end of code.

{__start_of_code__} ('piece' of code)

....
// OBJ. HTTP
function getHTTPObject() {
var xmlhttp;
/*@cc_on
@if (@_jscript_version >= 5)
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}
@else
xmlhttp = false;
@end @*/
if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
try {
xmlhttp = new XMLHttpRequest();
} catch (e) {
xmlhttp = false;
}
}
return xmlhttp;
}

<!-- OBJETS HTTP -->
var http = getHTTPObject();
var http1 = getHTTPObject();
var http2 = getHTTPObject();

// GESTION EVENT AJAX
function handleHttpResponse(varhttp,context){
switch (varhttp.readyState){
case 4:
switch (context){
case 'search':
...
break ;
case 'addline':
var sbar = document.getElementById("sbar") ;
sbar.innerHTML += varhttp.responseText ;
pbar1.next() ;
break ;
case 'ping':
...
break ;
default:
alert("!! ERROR !!") ;
break ;
}
break ;
case 3:
logger("Status : Transfert de donnees en cours...") ;
break ;
case 2:
logger("Status : Attente de la reponse...") ;
break ;
case 1:
logger("Status : Connexion au serveur...") ;
break ;
case 0:
logger("Status : Connexion non initialise !! ") ;
break ;
}
}
function wake(cnt){

var url_base =
document.getElementById("machinelist").getElements ByTagName("a")[cnt] ;
var url_sbar = new String(url_base) ;

if (url_base) {

url_sbar = url_sbar.replace("index.php","proc.php");
url_sbar = url_sbar.replace("wakeup","ajaxbehav_sbar");

// JS SYNCHRONE !!
http1.open("GET", url_sbar,false) ;
// HERE !!!!!
// this line has no effect ; state never change !!!
http1.onreadystatechange=function(){handleHttpResp onse(http1,"addline")}
;
///////////////////////////////////////////////
http1.send(null) ;

http2.open("GET", url_base,false);
http2.send(null) ;
//====================================

}

}
....
{__end__}

how this code return no error in any browser but works only on IE ??

thanks.

regards.

Aug 29 '06 #1
2 6122


jh****@gmail.com wrote:

// JS SYNCHRONE !!
http1.open("GET", url_sbar,false) ;
// HERE !!!!!
// this line has no effect ; state never change !!!
http1.onreadystatechange=function(){handleHttpResp onse(http1,"addline")}
;
///////////////////////////////////////////////
http1.send(null) ;
If you make a synchronous request then the send() call blocks your
script until the response is there and you don't need an
onreadystatechange event handler but you should simply have your code
check the status, responseText and so on directly here after the send
call. Firefox does not fire onreadystatechange for the synchronous call.

--

Martin Honnen
http://JavaScript.FAQTs.com/
Aug 29 '06 #2

it's OK ;) - that works

thanks...

Martin Honnen wrote:
jh****@gmail.com wrote:

// JS SYNCHRONE !!
http1.open("GET", url_sbar,false) ;
// HERE !!!!!
// this line has no effect ; state never change !!!
http1.onreadystatechange=function(){handleHttpResp onse(http1,"addline")}
;
///////////////////////////////////////////////
http1.send(null) ;

If you make a synchronous request then the send() call blocks your
script until the response is there and you don't need an
onreadystatechange event handler but you should simply have your code
check the status, responseText and so on directly here after the send
call. Firefox does not fire onreadystatechange for the synchronous call.

--

Martin Honnen
http://JavaScript.FAQTs.com/
Aug 30 '06 #3

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

7 posts views Thread by SE | last post: by
6 posts views Thread by Nathan | last post: by
3 posts views Thread by keith.schincke | last post: by
13 posts views Thread by TLaufenberg | last post: by
1 post views Thread by geevaa | last post: by
reply views Thread by leo001 | last post: by

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.