Salut les gars , je suis un developpeur qui fait du jquery depuis un certain temps.Voici un probleme pour lequel je n'ai pas réussi à trouver de solutions.

lorque je fais un appel ajax, je créé aussitôt du contenu html. mais j'arrive pas executer d'évènement sur ces composant. en tout cas pas dans le $(document).ready(); j'essais de comprendre. pour contourner ce problème je suis obligé d'ecrire mes eventlistener dans la partie du code du contenu créé. Mais cette solution en créé un nouveau problème. car mes évènements se répètent. je cherche des solutions. je vous montre le code

"``` $(document).ready({
var cond=" where flag_ministere in(1,3) limit 10 ";

remplir_tableau_ministeres($('#table_data_ministere'),cond)

actions_boutons()

})

function remplir_tableau_ministeres(table,cond)
{

/**/

 var data=get_ministeres(cond);

 var input="";
 var cpt=0;

data.forEach(function(y){
  cpt++;
  // <img src="images/image_client.jpg" height="70" width="100%" alt="" id="photo_ministere">

   input+="<tr>"
   input+="<td>"+cpt+"</td>";
   input+="<td>"+y.designation+"</td>";
  input+="<td>"+y.LIBELLE_DEST+"</td>";
   input+='<td><img src="uploads/ministeres/'+y.logo+'" height="50" width="100%" alt="" id=""></td>';

  var modif="<a class='btn btn-warning edit_ministere' data-bs-toggle='modal' data-bs-target='#modal_ministere' id_ministere='"+y.id_ministeres+"' id_destination='"+y.ID_DESTINATION+"' designation='"+y.designation+"' flag_ministere='"+y.flag_ministere+"' logo='"+y.logo+"'  logo_texte='"+y.logo+"' ><i class='fa fa-edit'></i></a>";
  var delet="<a class='btn btn-danger delet_ministere' id_ministeres='"+y.id_ministeres+"' ><i class='fa fa-trash'></i></a>";
  input+="<td>"+modif+"</td>";
  input+="<td>"+delet+"</td>";
  input+="</tr>";

})

table.find('tbody').html(input)

}

function save_ministere(f,btn)
{
$('.action_failure').html(' ')
$('.action_message').html(' ')
if(confirm('êtes-vous sûr de vouloir ENREGISTRER ?'))
{
var formData=new FormData(f[0]);
formData.append('logo',$('input[type=file]')[0].files[0])

 var btn_txt=btn.text()

 $.post({
   url:'codes/ministeres.php',
   data:formData,
   contentType: false,
   cache: false,
   processData:false,
   beforeSend:function()
   {
     btn.text("traitement")
   },

   dataType: 'json',
   success:function(data)
   {

    console.log(data)
     if(data.success.length>0)
     {
       $('.action_message').html('<div class="alert alert-success text-center">'+$(data.success).get(-1)+'</div>')

         var cond=" and flag_ministere in(1,3) limit 10 ";

          remplir_tableau_ministeres($('#table_data_ministere'),cond)
          //
         // $('#table_data_ministere').load(location.href+"#table_data_ministere")

          //actions_boutons()

     }
     if(data.failure.length>0)
     {
       $('.action_failure').html('<div class="alert alert-danger text-center">'+$(data.failure).get(-1)+'</div>')
     }

     btn.text(btn_txt)
   }
 })

 }

}

function update_ministere(f,btn)
{
$('.action_failure').html(' ')
$('.action_message').html(' ')
if(confirm('êtes-vous sûr de vouloir modifier ?'))
{
var formData=new FormData(f[0]);
formData.append('logo',$('input[type=file]')[0].files[0])

 var btn_txt=btn.text()

 $.post({
   url:'codes/ministeres.php',
   data:formData,
   dataType: 'json',
   contentType: false,
   cache: false,
   processData:false,
   beforeSend:function()
   {
     btn.text("traitement")
   },
   success:function(data)
   {
     if(data.success.length>0)
     {
       $('.action_message').html('<div class="alert alert-success text-center">'+$(data.success).get(-1)+'</div>')

         var cond=" where flag_ministere in(1,3) limit 10 ";

          //remplir_tableau_ministeres($('#table_data_ministere'),cond)
        $('#table_data_ministere').load(location.href+="#table_data_ministere")
          //actions_boutons()

     }
     if(data.failure.length>0)
     {
       $('.action_failure').html('<div class="alert alert-danger text-center">'+$(data.failure).get(-1)+'</div>')
     }

     btn.text(btn_txt)
   }
 })

}
}

function delete_minister(id_ministeres,btn)
{
$('.action_failure').html(' ')
$('.action_message').html(' ')

if(confirm('êtes-vous sûr de vouloir supprimer ?'))
{
 var btn_txt=btn.text();
  $.post({
   url:'codes/ministeres.php',
   data:{id_ministeres:id_ministeres,action:"delete"},

   beforeSend:function()
   {
     btn.text("traitement")
   },dataType: 'json',
   success:function(data)
   {
   // console.log(data)
     if(data.success.length>0)
     {
       $('.action_message').html('<div class="alert alert-success text-center">'+$(data.success).get(-1)+'</div>')

         var cond=" where flag_ministere in(1,3) limit 10 ";

          remplir_tableau_ministeres($('#table_data_ministere'),cond)
          //actions_boutons()

     }

     if(data.failure.length>0)
     {
       //alert($(data.failure).get(-1))
       $('.action_failure').html('<div class="alert alert-danger text-center">'+$(data.failure).get(-1)+'</div>')
     }

      btn.text(btn_txt)
   }
 })
}

}

function actions_boutons()
{
$('.delet_ministere').click(function(e){

e.preventDefault()
delete_minister($(this).attr('id_ministeres'),$(this))
})

$('.new_ministere').click(function(){

   $('#btn_form_ministere').attr('role','create');
   $('#btn_form_ministere').html('ENREGISTRER');
   $('.titre_modal_ministere').html('NOUVEAU MINISTERE')
   $('#action').val('create')

})

$('.edit_ministere').click(function(e){

   e.preventDefault()
   $('#btn_form_ministere').attr('role','update');
   $('#btn_form_ministere').html('MODIFIER');
   $('.titre_modal_ministere').html('MODIFIER INFOS DU MINISTERE '+$(this).attr('designation'))

   $('#action').val('update')
   $('#id_ministere').val($(this).attr('id_ministere'))
   $('#designation').val($(this).attr('designation'))
   $('#ID_DESTINATION').find('option[value="'+$(this).attr('id_destination')+'"]').attr('selected',true);
  // alert($(this).attr('logo'))
   $('#photo_ministere').attr('src','uploads/ministeres/'+$(this).attr('logo'))
   $('#flag_ministere').val($(this).attr('flag_ministere'))
   $('#logo_texte').val($(this).attr('logo_texte'))
$('#id_ministere').val($(this).attr('id_ministere'))

})

$('#form_ministere').submit(function(e){
   e.preventDefault();

   if($('#btn_form_ministere').attr('role')=="create")
   {
      save_ministere($(this),$('#btn_form_ministere'))
   }else if($('#btn_form_ministere').attr('role')=="update"){

      update_ministere($(this),$('#btn_form_ministere'))
   }
})

}
</script> " Entourez votre code en utilisant "" pour bien le mettre en forme. (ne copiez pas trop de code)



**Ce que je veux**

Décrivez ce que vous cherchez à obtenir.

**Ce que j'obtiens**

Décrivez vos éventuelles erreurs ou ce que vous obtenez à la place de ce que vous attendez :(

Aucune réponse