Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/08/2013, 16:59
chemanet
 
Fecha de Ingreso: junio-2012
Mensajes: 5
Antigüedad: 12 años, 6 meses
Puntos: 0
Ejecutar POST de PHP despues de un Ajax

Hola,
Tengo una llamada ajax $.post que devuelve un grid con uno de los campos en modo editar y con el boton para 'guardar cambios',
el problema es que cuando ya la tabla esta lista en la pagina original, y le doy guardar cambios, no ejecuta el submit de ese form (que tendria que ser algo asi como agenda.php?operacion=Cambio&num_id='.$reg[$pos][0]) - simplemente no hace nada.
Estoy usando Firefox 22. Lo curioso esque si depuro el programa en Eclipse si hace el submit y al cargar la pagina manda llamar la funcion 'Cambio'.

La funcion ajax que uso es la siguiente

Código Javascript:
Ver original
  1. function fEdita(i){
  2.         $.ajax({
  3.             type: "POST",
  4.             url: "edita.php",
  5.             data: {
  6.                     pos: i                         
  7.                   },
  8.             dataType: "json",
  9.             success: function(data) {              
  10.                     $("#tabla").html("");              
  11.                     $("#tabla").append(data);
  12.                 }
  13.             }
  14.             );
  15.         }


El POST que estoy mandando en la tabla de la página Edita.php
es algo asi:

Código PHP:
Ver original
  1. $tabla .= "[B]<form name='formCambio' method='post' action='agenda.php?operacion=Cambio&num_id=".$res[$i][0]."' onsubmit='return validaCampos(this);'>[/B]";
  2.                        $tabla .=        "<td class='nom1'><input type='text' name='eNombre' value='".$res[$i][1]."' class='eNom' maxlength='40' autofocus/></td>";
  3.                        $tabla .=        "<td class='tipo'><select name='eTipo'>";
  4.                             for ($x=0;$x<count($enum);$x++)
  5.                             {
  6.                                 if ($enum[$x]==$res[$i][2])
  7.                                 {
  8.             $tabla  .=              "<option selected='selected'>".$enum[$x]."</option>";
  9.                                 }
  10.                                 else
  11.             $tabla .=               "<option>".$enum[$x]."</option>";
  12.                            
  13.                             }
  14.             $tabla .=       "</select></td>
  15.                                          
  16.                                 <td class='numero'><input type='text' name='eNumero' maxlength='19' value='".$res[$i][3]."' /></td>
  17.                                 <td class='operacion'><button type='submit' name='bModif'>Modificar</button></td>
  18.                                 </form>
  19.                             ";

-- Al regresar el ajax deberia ejecutar esta función en Agenda.php:

Código PHP:
Ver original
  1. case "Cambio":{
  2.                         $num_id=$_GET['num_id'];
  3.                         $agenda->Cambio($num_id,$_POST['eNombre'],$_POST['eTipo'],
  4.                             $_POST['eNumero']);
  5.                         $num_id=null;
  6.                         break;}


Alguna idea?