no funciona button creado dinamicamente

Iniciado por GRCH, 4 Diciembre 2016, 20:12 PM

0 Miembros y 1 Visitante están viendo este tema.

GRCH

hola, tengo un boton de listar alumnos, que busca en la bd todos los de un curso. para lo mismo el fichero php retorna una lista desplegable de alumnos, y un boton buscar para que una vez seleccionado alguno de la lista busque sus calificaciones..

Osea el boton buscar es creado dinamicamente por la funcion succes(data). El caso es que no funciona, no realiza ningun cambio. no se si tendra algo que ver..

consultaCalificaciones.php

Código (php) [Seleccionar]
<?php
include_once '../../PHP/Conexion.php';
$conectar conexionBD();
 
    if (isset(
$_POST['cursos']) && isset($_POST['divisiones'])){
        global 
$conectar;
                            
$idcurso =htmlentities($_POST['cursos']);
                            
$iddivision =htmlentities($_POST['divisiones']);
                            
$sqlalumnos="SELECT alumno.idalumno,alumno.idpersona,persona.nombre,persona.apellido FROM alumno";
                            
$sqlalumnos.=" LEFT JOIN persona ON alumno.idpersona=persona.idpersona WHERE idcurso=".$idcurso." AND iddivision=".$iddivision.";";
                            
$rsalumnosselect($conectar,$sqlalumnos);
 
                            }
                           
?>

                             <form method="post" id="listado" name="listado">
  <section id="sección">

      <?php
 
 
      $totalalumnos
=count($rsalumnos);?>

  <table style="width: 100%;">
       <tr>
        <td style="alignment-adjust: central;">Listado
       <select style="text-align: center;alignment-adjust: ce;" name="alumnos" id="alumnos">
       <?php
      
if ($totalalumnos>0){
      foreach (
$rsalumnos as $alumno){
        
$idalu=$alumno['idalumno'];
        
$nombrecompleto=$alumno['nombre'];
        
$nombrecompleto.=' '.$alumno['apellido'];?>

       <option value="<?php echo $idalu;?>"><?php echo  $nombrecompleto;?></option>
      <?php }?>
        </select></td>
        <td><input type="button" id="buscar" value="buscar"/></td>
       </tr>
       </table>


        </section>

</form>
<?php }
?>


y el js es este
Código (javascript) [Seleccionar]
$(document).ready(function(){
//cargo cursos y divisiones al carga pag
$('#curso').load("getcursos.php");
$('#division').load("getdivisiones.php");

$("#listar").click(function(){
var form=$("#busqueda").serialize();
var curso=$('#curso').val();
var division=$('#division').val();

var trim = $("#trimestre").val();
var url = "consultaCalificaciones.php";           


    $.ajax({
   
           type: "POST",
           url: url,
           data: {form,trimestre:trim,cursos:curso,divisiones:division},
     
           success: function(data)
           {
             $("#respuesta").html(data);
            }
});

});
$("#buscar").click(function(){
   var curso=$('#curso').val();
   var division=$('#division').val();

   $("#alumnos").change(function() {
            var id = $(this).children(":selected").attr("value");
                    });
                    var url = "calificaciones.php";
                   
                  $.ajax({
   
           type: "POST",
           url: url,
           data: {trimestre:trim,idalu:id,cursos:curso,divisiones:division},
     
           success: function(data)
           {
             $("#notas").html(data);
            }
});   
    });
});


Probe hacer un alert dentro de buscar y nada..muchas gracias

[u]nsigned

Proba con:

Código (javascript) [Seleccionar]
$('#buscar').on('click',function(e){
    //tu codigo aca
    alert("It's work!");
});


Y nunca anides un manejador (handler) de eventos dentro de otro. Veo que en tu codigo el evento change de #alumnos esta dentro del evento click de #buscar.

No hay atajo ante la duda, el misterio se hace aquí...
Se hace carne en cada uno, el misterio es existir!