Foros del Web » Programando para Internet » Javascript »

cambiar el submit de un formulario

Estas en el tema de cambiar el submit de un formulario en el foro de Javascript en Foros del Web. puedo cambiar el submit de un formulario al cambiar una lista desplegable? es decir, seleccionar en una lista un valor, mediante el onchange de este ...
  #1 (permalink)  
Antiguo 06/03/2003, 06:09
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.135
Antigüedad: 21 años, 5 meses
Puntos: 2
cambiar el submit de un formulario

puedo cambiar el submit de un formulario al cambiar una lista desplegable?
es decir,
seleccionar en una lista un valor, mediante el onchange de este control y alguna funcion, recargar el formulario y que me mantenga los valores de los controles escritos y el de la lista desplegable.

gracias
  #2 (permalink)  
Antiguo 06/03/2003, 06:23
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Hombre, recargar el formulario no es necesario y la mitad de las veces se perderían los datos.


pero puedes hacer algo asi



<select name="pascual" onChange="this.form.action=this.options[this.selectedIndex].value">
<option value="accion1.asp">pepe</option>
<option value="accion2.asp"> perico </option>
<option value="accion3.asp"> anacleto </option>
</select>

saludos
  #3 (permalink)  
Antiguo 06/03/2003, 06:31
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.135
Antigüedad: 21 años, 5 meses
Puntos: 2
me explico mejor
trabajo con coldfusion
tengo en mi formulario 2 listas desplegables, la segunda depende de la primera (ambas rellenadas con registros de una base de datos), por eso decia de recargar, para volver a colocar los datos correspondientes de la bd de datos. Pues al modificar la primera lista, recargo la pagina para llenar la segunda, pero no me gustaria perder los datos introducidos en el formulario, y en vez de que el formulario vaya a la pagina de proceso, se llame a si mismo.

Con lo que me has colocado me das pistas, pero si me puedes ayudar un poco mas mejor

gracias
  #4 (permalink)  
Antiguo 06/03/2003, 06:43
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Lo que pides es complicado y da mucho trabajo y a medios pelos queda el tema.

Mira, en el momento de recargar una página o volver a llamarse a sí misma se pierden los valores javascript que se hubieran recogido.

Puedes poner un frame oculto que contenga javascript y actualizar o recargar sólo el frame donde tengas el formulario. Entonces podrías guardar los datos y variables en el frame de arriba pero yá te digo que es bastante trabajo.

Una alternativa que podrías usar es meter ambas listas desplegables en una página diferente y meterlas en un iframe en la página de tu formulario. En tu página del formulario puedes tener dos campos ocultos que tomen sus values de lo escogido en las desplegables, para así a la hora de enviar el form recoja también los valores de esas listas (que estarían en otra página).

Otra alternativa sería en el onChange cambiar la acción del formulario y que se llame a sí misma y al recargar recoger los valores del formulario y volver a crear la página agregando esos values recogidos.

Es decir, inicialmente tu form tiene su accion original

<form action="accion1">

esa sería la accion mientras no se toquen los desplegables.

al desplegable le pones un onChange="this.form.action=estamismapagina;this.fo rm.submit()"

Con eso haces un primer submit que va a la misma página que recoge los valores de la bd y además recoja los values del formulario y los vuelva a poner en su sitio.

Si ese primer select no se vuelve a tocar (se escoge algo del otro) la acción seguirá siendo la accion1 que finalmente será enviada a donde se tenga que enviar.

No sé si logré explicarme
  #5 (permalink)  
Antiguo 06/03/2003, 06:46
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Hum, veo que omití comentar que la última propuesta que te he dado, al llamarse a sí misma la página y recoger los valores iniciales del formulario eso habrías de hacerlo en el lenguaje de lado servidor
  #6 (permalink)  
Antiguo 06/03/2003, 06:51
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.135
Antigüedad: 21 años, 5 meses
Puntos: 2
quizá es suficiente, el ultimo caso es el que me sirve

gracias
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:53.