2

J'ai un jQuery-bootgrid comme décrit dans les exemples sur la page d'accueil. Dans la dernière colonne, j'ai deux boutons pour Edit/Delete du contenu de la ligne.Boîte de dialogue modale jQuery-bootgrid

Tout ce que je veux faire est de montrer une boîte de dialogue modale lorsque l'utilisateur clique sur le bouton Supprimer. Cependant, rien ne se passe sur le clic. Pas d'erreur, pas d'avertissement, rien.

Voici le code pour la bootgrid commandes parties:

"commands": function(column, row) { 
       return "<button type=\"button\" class=\"btn btn-sm btn-primary command-edit\" data-row-id=\"" + row.EventId + "\"><span class=\"icon glyphicon glyphicon-pencil\"></span>@Translator.TranslateGlobal(Keys.Global.Edit)</button> " + 
        "<button class=\"btn-default btn\" data-content-close=\"Close\" data-content-id=\"Div\" data-content-save=\"Save\" data-target=\"#6698CB2F-2948-45D9-8902-2C13A7ED6335\" data-title=\"Title\" data-toggle=\"modal\" type=\"button\">Show modal</button>"; 
      }, 

Je le bouton même exactement en dehors du bootgrid et clique dessus montre la boîte de dialogue comme prévu. Des idées où regarder ou ce qui provoque ce comportement?

Répondre

2

Ouverture Modal sur l'événement, cliquez Reference

formatters: { 
      "commands": function (column, row) { 
       return "<button type=\"button\" class=\"btn btn-xs btn-default command-edit\" data-toggle=\"modal\" data-target=\"#confirmation\"><span class=\"fa fa-pencil\"></span></button> " + 
        "<button type=\"button\" class=\"btn btn-xs btn-default command-delete\" ><span class=\"fa fa-trash-o\"></span></button>"; 
      } 
     } 
    }).on("loaded.rs.jquery.bootgrid", function() { 
     /* Executes after data is loaded and rendered */ 
     $(this).find(".command-delete").click(function (e) { 
      $($(this).attr("data-target")).modal("show"); 
     }); 
    }); 

espérons que cela fonctionne :)

+0

Cela met un gestionnaire de clic sur chaque ligne. Vous feriez mieux d'en mettre un sur la table lui-même, puis de le filtrer pour chaque clic qui jaillit d'une rangée. De cette façon, vous n'avez pas besoin de réappliquer le gestionnaire si les pages de la grille, et il y a beaucoup moins de gestionnaires d'événements (plus efficaces): $ ('table'). On ("click", ". Command-delete", function (e) { console.log ('votre truc arrive ici'); }); – philw