Ver Mensaje Individual
  #7 (permalink)  
Antiguo 14/02/2014, 15:31
raulgranadosraul
 
Fecha de Ingreso: julio-2013
Mensajes: 174
Antigüedad: 10 años, 9 meses
Puntos: 1
Respuesta: Problema con formulario en ventana modal

Cita:
Iniciado por Alexis88 Ver Mensaje
Basándome en el mismo ejemplo que hice, si deseas mostrar una ventana modal que contendrá un formulario con N campos y deseas enviar a través de la función un dato, así como lo hice para mostrarlo en el mensaje de alerta, podrías insertarlo directamente en un elemento específico.

Supongamos que en la ventana modal tenemos este formulario:

Código HTML:
Ver original
  1. <form action = "ejemplo.php" method = "post">
  2.     Nombre: <input type = "text" id = "nombre" name = "nombre" />
  3.     Edad: <input type = "text" id = "edad" name = "edad" />
  4.    
  5.     <input type = "hidden" id = "miId" name = "miId" />
  6.     <input type = "submit" value = "Enviar" />
  7. </form>

Solamente tendríamos que hacer esto en la función para insertar el valor recibido en la función al campo oculto:

Código Javascript:
Ver original
  1. function miFuncion (id) {
  2.     //Aquí va el código con el que muestras la ventana modal
  3.  
  4.     //Aquí inserto el valor en la caja oculta
  5.     document.getElementById("miId").value = id;
  6. }

Por favor, analiza el código, no te limites a copiarlo y pegarlo, si lo analizas, lo entenderás y podrás adaptarlo fácilmente a tus necesidades.

Saludos
Saludos Alexis, recurro a ti ya que has sido el único que ha podido o sabido ayudarme, a ver si puedo solucionar una cosa más.
El paso de valores de php a js va perfecto como tu me indicaste.

El problema es que tengo dos ventanas modales con dos updates diferentes pero necesito pasarles el mismo parámetro (idCita) para que me modifique la línea que es. Este es el envío:

Código HTML:
<td align="center" style="padding:5px;font-size:20px"><span style="cursor:pointer" onclick="javascript:mostrarVentana3(<?php echo $row_CitasHoy['idCita']; ?>);"><?php echo $row_CitasHoy['txtComentario']; ?>.</span></td>

<td align="center" style="padding:5px;font-size:20px"><span style="cursor:pointer" onclick="javascript:mostrarVentana4(<?php echo $row_CitasHoy['idCita']; ?>);"><?php echo $row_CitasHoy['txtAcciones']; ?>.</span></td> 
Verás que en las dos paso el idCita, ya que es la clave principal.
El caso es que he puesto las dos modales en diferentes paginas y funcionan bien cada uno por su lado, pero en la misma página no le puedo pasar el idCita a los dos.

Además el autocompletar de DW me avisa cuando estoy escribiendo el código de que idCita ya se usa en otros js.

Con lo cual no se que hacer para pasar el mismo parametro a las dos funciones y que me funcionen por separado.

Estas son las dos modales que reciben idCita:
Código Javascript:
Ver original
  1. <script>
  2.         function mostrarVentana3(idCita)
  3.         {
  4.             var ventana3 = document.getElementById('miVentana3');
  5.             ventana3.style.marginTop = "100px";
  6.             ventana3.style.left = ((document.body.clientWidth-300) / 2) +  "px";
  7.             ventana3.style.display = 'block';
  8.             document.getElementById("idCita").value = idCita;
  9.         }
  10.         function cerrarVentana3()
  11.         {
  12.             var ventana3 = document.getElementById('miVentana3');
  13.             ventana3.style.display = 'none';
  14.         }
  15. </script>
  16. <script>
  17.         function mostrarVentana4(idCita)
  18.         {
  19.             var ventana4 = document.getElementById('miVentana4');
  20.             ventana4.style.marginTop = "100px";
  21.             ventana4.style.left = ((document.body.clientWidth-300) / 2) +  "px";
  22.             ventana4.style.display = 'block';
  23.             document.getElementById("idCita").value = idCita;
  24.         }
  25.         function cerrarVentana4()
  26.         {
  27.             var ventana4 = document.getElementById('miVentana4');
  28.             ventana4.style.display = 'none';
  29.         }
  30. </script>

¿ Alguna idea de cómo puedo hacerlo ?
Gracias una vez más.