Foros del Web » Programando para Internet » Javascript »

onClick no funciona en IE6

Estas en el tema de onClick no funciona en IE6 en el foro de Javascript en Foros del Web. hola, a todos tengo un problema con un evento, onClick del <input>, especificamente, este evento llama a una funcion que devuelve true o false, pero ...
  #1 (permalink)  
Antiguo 30/11/2006, 18:32
Avatar de deadlykyo  
Fecha de Ingreso: noviembre-2005
Ubicación: Cbba - Bolivia
Mensajes: 747
Antigüedad: 18 años, 5 meses
Puntos: 5
onClick no funciona en IE6

hola, a todos tengo un problema con un evento, onClick del <input>, especificamente, este evento llama a una funcion que devuelve true o false, pero aunque devuelva false, igual sigue procesando el submit, eso no me pasa con ningun mozilla, solo con el IE6, ahora cambie la invocacion de la funcion a el evento onSubmit del tag <form> y ese si funciona, pero me gustaria que se llame a esa funcion, cuando se presione un boton especifico y no asi cada vez que se realize un submit en el formulario, aqui les dejo algo de codigo:
Código HTML:
//esta funcion recibe arreglos de regex para validar, ids de los campos y mensajes de respuesta
<script type="text/javascript">
function validaTexto(regexArr,idCampoArr,idMsgArr,msgErrArr)
{
   var resultOk=new Array(regexArr.length);
   var regexp;
   for (i=0; i<idCampoArr.length; i++)
   {
      regexp= new RegExp(regexArr[i]);
      if (!regexp.test(document.getElementById(idCampoArr[i]).value)) 
      {
	document.getElementById(idCampoArr[i]).style.background="#e3ea96";
	document.getElementById(idMsgArr[i]).style.color="#b74900";
	document.getElementById(idMsgArr[i]).style.fontSize='11px';
	document.getElementById(idMsgArr[i]).style.display='block';
	document.getElementById(idMsgArr[i]).style.border='0px';
	document.getElementById(idMsgArr[i]).innerHTML=msgErrArr[i];
	resultOk[i]=false;
      }
      else
      {
	document.getElementById(idCampoArr[i]).style.background="#b2c9a4";
	document.getElementById(idMsgArr[i]).innerHTML="";
	document.getElementById(idMsgArr[i]).style.display='none';
      }
   }
   var res=true;
   for (i=0; i<idCampoArr.length; i++)
   {
	if(resultOk[i]==false)
	{
	   res= false;
	   break;
	}
   }
   return res;
}
</script> 
Código PHP:
//aqui es donde creo la llamada a la funcion Javascript
$condicionJS= "\"return validaTexto([".RGEX_1.",".RGEX_2."],['".$arrId[0]."','".$arrId[1]."'],['".$arrIdMsg[0]."','".$arrIdMsg[1]."'],['".$arrMsg[0]."','".$arrMsg[1]."'])\"";

<form action="<?=$_SERVER['PHP_SELF']?>" method="post" onSubmit=<?=$condicionJS?> >
<tr>
<td colspan="2">
   <input type="submit" name="ingresar" value="Ingresar" onClick=<?=$condicionJS?> >
</td>
</tr>
</form>
saludos, cya
__________________
"El Conocimiento es de todos, no solo de algunos"
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:35.