Foros del Web » Programando para Internet » Jquery »

[SOLUCIONADO] Paso de variables entre funciones de JQuery

Estas en el tema de Paso de variables entre funciones de JQuery en el foro de Jquery en Foros del Web. Buenas a todos, Siempre suelo trabajar con PHP pero en este caso por ciertos requisitos me han pedido que trabaje con JQuery. Al principio no ...
  #1 (permalink)  
Antiguo 09/04/2015, 03:56
Avatar de Nostromoz  
Fecha de Ingreso: noviembre-2011
Mensajes: 4
Antigüedad: 12 años, 5 meses
Puntos: 0
Paso de variables entre funciones de JQuery

Buenas a todos,

Siempre suelo trabajar con PHP pero en este caso por ciertos requisitos me han pedido que trabaje con JQuery. Al principio no tenía problemas pero llevo un par de días atascado con un problema y no soy capaz de sacarlo, realmente tampoco se si va en esta sección o podría ir directamente a la de Javascript... Voy a intentar explicarlo de forma breve y clara:

Dentro de un bucle foreach en php me saca un listado de unas incidencias que están almacenadas en una BBDD en MySQL. Dentro de ese bucle, necesito recuperar el "ID" de cada incidencia para cuando se pulse sobre un botón se borre la incidencia deseada (en mi caso, cada incidencia tiene asociado un botón de borrar con su ID correspondiente). Quitando código que no viene al caso, básicamente queda en esto:

Código PHP:
Ver original
  1. foreach ($incidencia as $row) {
  2. echo "<div class='botoneraizq'><input type=image src='../../recursos/Boton_Borrar.jpg' class='abrirborrar' value='".$row->id."'></div>";
  3. }

En la parte de JQuery, tenemos una función que llama a un evento click y dicho elemento recoge el $row->id del "Value"del código anterior y llama a una ventana modal. La ID concreta de cada incidencia la recibe perfectamente:

Código Javascript:
Ver original
  1. $(".abrirborrar").click(function (){
  2.         var id = $(this).val(); //Obtengo el Value con el id del elemento a borrar
  3.         alert (id); //Compruebo que se recibe el id correcto de cada incidencia
  4.         return id; // No tengo muy claro si puede devolver un valor
  5.       $("#borrar").dialog("open");
  6.     });

En dicha ventana Modal, al pulsar el botón "OK" se activa una función que llama a un archivo PHP que se encargará de borrar la incidencia con la ID seleccionada. El problema que encuentro es que necesito recuperar la variable "id" del JQuery que he puesto justo arriba en esta función y no encuentro la manera de recuperar esta variable para poder mandárselo al php de borrado, os dejo el código:

Código Javascript:
Ver original
  1. $("#borrar").dialog({
  2.  
  3. // Aquí hay mas código que no es relevante
  4.  
  5. buttons: {
  6.          
  7.         "Ok": function() {
  8.            
  9.         // Aquí es donde necesito recuperar la ID del JQuery anterior para mandárselo al "borraincid.php"
  10.  
  11.             jQuery.post ("../../recursos/borrarincid.php", {id:id},
  12.                     function(data, textStatus){                        
  13.                         if(data == 1){
  14.                             $("#borrar").dialog("close");
  15.                             document.location.reload(true);
  16.                         } else {
  17.                             $("#fracaso").delay(500).fadeIn("slow");;
  18.                         }
  19.             });
  20.         },
  21. });

He intentado recuperar la ID de la incidencia directamente en el botón "OK" de la ventana modal para enviarlo al archivo php, pero siempre me recogía el último valor del bucle.

Perdonad por haberme enrollado tanto, pero quiero dejar las cosas claras para no haceros perder el tiempo.

Muchas gracias de antemano y un saludo.
  #2 (permalink)  
Antiguo 09/04/2015, 06:54
(Desactivado)
 
Fecha de Ingreso: abril-2013
Ubicación: rosario
Mensajes: 248
Antigüedad: 11 años
Puntos: 17
Respuesta: Paso de variables entre funciones de JQuery

No trabajo con dialog, peor leyendo la docu veo que asi lo podes pasar
Código Javascript:
Ver original
  1. $('#modal-div').data('mydata', data).dialog('open');
y asi lo recuperas
Código Javascript:
Ver original
  1. var data = $('#modal-div').data('mydata');
  #3 (permalink)  
Antiguo 09/04/2015, 08:36
Avatar de Nostromoz  
Fecha de Ingreso: noviembre-2011
Mensajes: 4
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: Paso de variables entre funciones de JQuery

Muchísimas gracias diurno10, todo perfecto con lo que me has pasado.

Un saludo!

Etiquetas: funciones, paso, variables
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 15:21.