Foros del Web » Programando para Internet » Javascript »

Como añadir un document.nombre.submit() a mi funcion

Estas en el tema de Como añadir un document.nombre.submit() a mi funcion en el foro de Javascript en Foros del Web. Hola tengo una funcion que trata de recojer el valor de una lista desplegable y segun este valor se abre una segunda lista con sus ...
  #1 (permalink)  
Antiguo 11/08/2011, 10:41
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 13 años
Puntos: 10
Como añadir un document.nombre.submit() a mi funcion

Hola tengo una funcion que trata de recojer el valor de una lista desplegable y segun este valor se abre una segunda lista con sus opciones correspondientes segun la opcion elegida en la primera.

Hasta aqui bien, lo que yo quiero conseguir es que aparte de esto cuando seleciono una opcion en la primera lista me haga un submit() yo probe de poner la linea en el select con el atributo onchange despues de la funcion asin:

Código Javascript:
Ver original
  1. <select onchange="from(document.form.clientes.value,'cliente','datos.php');document.form.submit();">

Pero resulta que cuando seleciono una opcion me hace el submit(), el valor vuelve al estado anterior osea a nulo y entonces no se me ejecuta la funcion from, muestro codigo de la funcion para ver si me podeis aconsejar o que hacer.
Código Javascript:
Ver original
  1. function from(id,iden,url){
  2.         var aleatorio=parseInt(Math.random()*99999999);
  3.         var vinculo=url+"?id="+id+"&rand="+aleatorio;
  4.         Peticion.open("GET",vinculo,true);
  5.         Peticion.onreadystatechange=Peticion.onreadystatechange=function(){
  6.                if (Peticion.readyState==4)
  7.                {
  8.                    
  9.                        if (Peticion.status==200)
  10.                        {
  11.                                
  12.                                var http=Peticion.responseText;
  13.                                document.getElementById(iden).innerHTML= http;
  14.  
  15.                        }
  16.                }
  17.        }
  18.        Peticion.send(null);
  19.  
  20.  
  21. }

Un saludo
  #2 (permalink)  
Antiguo 11/08/2011, 11:56
Avatar de goteen_mx  
Fecha de Ingreso: abril-2005
Ubicación: D.F.
Mensajes: 403
Antigüedad: 19 años
Puntos: 37
Respuesta: Como añadir un document.nombre.submit() a mi funcion

Si ejecuta la función, lo que pasa es que el submit hace que se recargue toda la página, tienes 2 opciones, hacerlo como lo haces con tu lista de manera asincrona o hacer el submit y recibir los datos por post o get y procesarlos y regresarlos.

Saludos.
__________________
Born to be free.
  #3 (permalink)  
Antiguo 11/08/2011, 12:06
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 13 años
Puntos: 10
Respuesta: Como añadir un document.nombre.submit() a mi funcion

Hola goteen_mx bueno de manera asincronica no quiero, y tu segunda opcion no la entendi bien yo los optipon los recojo de una base de datos si me pudieras explicar la segunda opcion te lo agradeceria.

Un saludo.
  #4 (permalink)  
Antiguo 11/08/2011, 12:14
Avatar de goteen_mx  
Fecha de Ingreso: abril-2005
Ubicación: D.F.
Mensajes: 403
Antigüedad: 19 años
Puntos: 37
Respuesta: Como añadir un document.nombre.submit() a mi funcion

Tal vez con este ejemplo te quede mas claro, ejecutalo.

Código PHP:
Ver original
  1. <?php
  2.   $nombre=$_POST['nombre']
  3. ?>
  4. <form method="post">
  5.   <input type="text" value="<?php echo $nombre?>" name="nombre">
  6. </form>

Lo que tienes que hacer es enviar todas tus variables, recibirlas con algun lenguaje de servidor y volverlas a enviar ya sea como variable de JS o dentro de algun elemento de formulario, aunque yo recomendaría que lo hicieras de manera asincrona, como lo estabas haciendo.

Saludos.
__________________
Born to be free.
  #5 (permalink)  
Antiguo 11/08/2011, 12:45
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 13 años
Puntos: 10
Respuesta: Como añadir un document.nombre.submit() a mi funcion

Que te refieres recoger el valor de la primera lista y mandarlo al servidor para que me de los valores de la segunda lista?

algo asin te refieres porque con la otra opcion a que te refieres?

y la otra opcion que seria simplemente darle un boton de envio?

Yo realmente lo que quiero es a la vez que selecionas una opcion mostrar el valor en pantalla sin ningun boton de envio pero claro teniendo en cuenta que son dos listas dependiente y todo esto sin reflescar la pagina.

Si me podeis dar alguna idea?

saludos.

Última edición por pithon; 11/08/2011 a las 13:03

Etiquetas: funcion, html, php
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 21:29.