Funciona no firefox mais não no ie

pessoal, será que alguem ai podia me ajuda???

tenho uma pagina jsp que funciona no opera e firefox, mais não no ie.

assim: eu digito um ip no campo da esquerda (ou nome do host), e ao clicar no botão, o browser manda o ip digitado pra uma servlet no servidor, que da um ping nesse endereço e retorna o resultado pro browser que vai exibir o resultado no textfield da direita, o ultimo, que chamei de saida.

após o user ter apertado o botão, deve ficar pingando repetidamente a cada 1 segundo.

to com 2 problemas, um creio que masi facil e outro mais complicadinho:

o primeiro é que o segundo botão, que deve fazer parar de dar o ping não ta fazendo

o segundo problema é que apesar de no firefox ta funcionando normal, no ie só da o primeiro ping e não atualiza depois disso…

segue o codigo do meu jsp:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>futuro pingador</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>

<form name="formulario">


<%for (int i=0;i<20;i++){%>

<input name="ip<%=i%>"     type="text"   size="25">
<input name="inicio<%=i%>" type="button" value="  inicar  " onclick="loop<%=i%>();">
<input name="parar<%=i%>" type="button" value="   parar  "  onclick="pararping<%=i%>();">
<input name="saida<%=i%>"  type="text"   size="70">
<br>

&lt;%}%&gt;

&lt;/form&gt;



&lt;script type="text/javascript"&gt;



&lt;%for (int i=0;i&lt;20;i++){%&gt;

continua&lt;%=i%&gt;=true;

function pingar&lt;%=i%&gt;(){
   
     var req&lt;%=i%&gt;;   
        
      try {
        // Firefox, Opera 8.0+, Safari
        req&lt;%=i%&gt;=new XMLHttpRequest();
      } catch (e) {
        // Internet Explorer
        try {
          req&lt;%=i%&gt;=new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e){
          try {
            req&lt;%=i%&gt;=new ActiveXObject("Microsoft.XMLHTTP");
          } catch (e) {
            alert("Atualiza essa coisa pré-historica que vc chama de browser!");
            return false;
          }
        }
      }
     	
     var url&lt;%=i%&gt;= "http://192.168.0.158:8080/ping?ip="+document.formulario.ip&lt;%=i%&gt;.value; 
	
  
     req&lt;%=i%&gt;.onreadystatechange = function(){

	if( req&lt;%=i%&gt;.readyState == 4 && ( req&lt;%=i%&gt;.status == 200 || req&lt;%=i%&gt;.status == 500 ) ) {   
         
		texto&lt;%=i%&gt;=req&lt;%=i%&gt;.responseText; 
		 
		document.formulario.saida&lt;%=i%&gt;.value=texto&lt;%=i%&gt;;
           
     	}


     };         
     req&lt;%=i%&gt;.open("GET", url&lt;%=i%&gt;, true);   		  
     req&lt;%=i%&gt;.send(null);   
}

var temporizador;

function loop&lt;%=i%&gt;(){
	
		temporizador&lt;%=i%&gt;=setInterval("pingar&lt;%=i%&gt;()", 1000);
	
}

function pararping&lt;%=i%&gt;(){

	clearInterval(temporizador);
	document.formulario.saida&lt;%=i%&gt;.value="";
}


	
&lt;%}%&gt;

&lt;/script&gt;





&lt;/body&gt;
&lt;/html&gt;