Foros del Web » Programando para Internet » Javascript »

funciona en explorer pero no en mozilla

Estas en el tema de funciona en explorer pero no en mozilla en el foro de Javascript en Foros del Web. Hola gente, tengo una consulta, en una pagina hecha en php tomo una serie de datos en campos hidden y después los envios de la ...
  #1 (permalink)  
Antiguo 24/10/2006, 07:57
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 972
Antigüedad: 20 años
Puntos: 2
funciona en explorer pero no en mozilla

Hola gente, tengo una consulta, en una pagina hecha en php tomo una serie de datos en campos hidden y después los envios de la siguiente forma:

<SCRIPT language="JavaScript1.2">
document.myform.submit();
</script>


En internet explorer funciona perfecto, pero en en mozzilla no anda.

Muchas gracias desde ya.
  #2 (permalink)  
Antiguo 24/10/2006, 08:40
 
Fecha de Ingreso: octubre-2006
Mensajes: 5
Antigüedad: 17 años, 6 meses
Puntos: 0
En Mozilla no puedes acceder a los elementos de esa forma. Prueba a poner:
documento.getElementById('myform').submit();

o en caso de que el formulario no tenga id y sólo le hayas puesto name:
document.getElementsByName('myform')[0].submit();

El método getElementById te devuelve el elemento del documento que tenga ese identificardo, si no existe devuelve null. Mientras getElementsByName te devulve los elementos que tenga dicho nombre. Devuelve un array con los elementos, es decir, si lo asignas a la variable eltemp, en eltemp.length tienes el número de elementos y mendiante eltemp[i], accedes a cada uno de los elementos.
  #3 (permalink)  
Antiguo 24/10/2006, 08:51
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 3 meses
Puntos: 772
Hola moron y roverto

Otras formas de hacerlo serían:

document.forms[0].submit();
document['myform'].submit();

roverto: bienvenido al foro.

Saludos,
  #4 (permalink)  
Antiguo 24/10/2006, 09:12
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 972
Antigüedad: 20 años
Puntos: 2
Gracias a ambos, pero de ninguna de esas formas funciona, queda la página en blanco, les copio el fuente.

<form name="myform" action="negocios/main.php?action=1
&mostrar=lt/frmAlt.php?numid=1&table=
tb_ev" method="POST">

<input type="hidden" name="numidEn" value="1">
<input type="hidden" name="numidDe" value="1">
<input type="hidden" name="numidac" value="1">
<input type="hidden" name="strsta" value="5">
<input type="hidden" name="strnot" value="">

</form>

<SCRIPT language="JavaScript1.2">
document.myform.submit();
</script>

Última edición por moron; 24/10/2006 a las 11:36
  #5 (permalink)  
Antiguo 24/10/2006, 09:16
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 1 mes
Puntos: 1284
Hola:

No entiendo que no funcione la forma original... si myform es el campo name del formulario, debería funcionar... ¿no será el id?...

La verdad es que prefiero usar en los scripts la colección de formularios (document.forms), pero eso no debería influenciar en la pregunta...

roverto: bienvenido... no te fies del array getElementsByName, porque explorer los implementa fatal... crea el array desde el atributo id (como si se pudieran repetir... )

También asegúrate que mozilla tenga habilitado javacript...

Saludos Javi
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #6 (permalink)  
Antiguo 24/10/2006, 09:20
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 1 mes
Puntos: 1284
Hola:

Hemos cruzado los mensajes...

¿Como recibes los datos... ?

Fíjate que tendrías que usar los métodos get y post desde tu CGI... y usando post no puedes usar html puro.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #7 (permalink)  
Antiguo 24/10/2006, 11:08
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 972
Antigüedad: 20 años
Puntos: 2
hola caricatos

paso el script complete, desde el form hasta la funcion submit:



<form name='myform' action="negocios/main.php?action=1
&mostrar=lt/frmAltaEvaluacion.php?numid=<?php echo $idAccesion?>&table=
<?
if($tipoDato==1){
echo "tb_ev";
}elseif ($tipoDato==2){
echo "tb_eva";
}elseif ($tipoDato==3){
echo "tb_evalD";
}elseif ($tipoDato==4){
echo "tb_evalT";
}elseif ($tipoDato==5){
echo "tb_evalC";
}
?>" method="POST">
<input type="hidden" name="numidEnv" value="<? echo $_POST["numidEnvt"];?>">
<input type="hidden" name="numidDesc" value="<? echo $idDesc;?>">
<input type="hidden" name="numidacc" value="<? echo $idAcc;?>">
<input type="hidden" name="strstatus" value="<? echo $status;?>">
<input type="hidden" name="strnotes" value="<? echo $notes;?>">

</form>

<SCRIPT language="JavaScript1.2">
document.myform.submit();
</script>
  #8 (permalink)  
Antiguo 24/10/2006, 11:31
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 1 mes
Puntos: 1284
Hola:

Tal como lo muestras te puedo decir muy poco...

Tendrías que acostumbrarte a mirar lo que recibes viendo su código... ten cuidado cuando manejas los 2 métodos... al poner datos en la url simulas el método get, pero en el frmulario usas el post... a veces un espacio en blanco o un carácter raro fastidia el tema.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #9 (permalink)  
Antiguo 24/10/2006, 11:33
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 972
Antigüedad: 20 años
Puntos: 2
Lo que recibo lo postié mas arriba, copié el fuente de la pagina cuando queda en blanco. (mensaje 4)
  #10 (permalink)  
Antiguo 24/10/2006, 13:12
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 972
Antigüedad: 20 años
Puntos: 2
para eliminar supuestos, creé un nuevo archivo acotado y tampoco funciona, el codigo de ese archivo es el siguiente:

<form name="myform" action="pagina2.php" method="POST">

<SCRIPT language="JavaScript">
document.myform.submit();
//document.forms[0].submit();
//document["myform"].submit();
</script>
</form>

el error que me arroja en consola es el siguiente;

Error: document.myform has no properties
Línea: 5
en donde linea 5 es :
document.myform.submit();

si intento con alguno de los otros ocurre lo mismo.

saludos
  #11 (permalink)  
Antiguo 24/10/2006, 13:33
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 1 mes
Puntos: 1284
Hola:

Parece que el script lo tienes dentro del form... asegúrate de que quede fuera y con el formulario totalmente definido... incluso en el head pero desde el evento onload del body.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #12 (permalink)  
Antiguo 26/10/2006, 12:12
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 972
Antigüedad: 20 años
Puntos: 2
muchicimas gracias caricatos.

Puse la linea del submit dentro de una funcion en el head y en el onload la llamé y ahora si funciona.

saludos maestro
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 13:56.