J'ai un tableau HTML de lignes liées aux lignes de la base de données. Je voudrais avoir un lien "supprimer la ligne" pour chaque ligne, mais je voudrais confirmer avec l'utilisateur au préalable.
Existe-t-il un moyen de le faire en utilisant la boîte de dialogue modale Twitter Bootstrap?
Réponses:
OBTENIR la recette
Pour cette tâche, vous pouvez utiliser des plugins et des extensions d'amorçage déjà disponibles. Ou vous pouvez créer votre propre fenêtre de confirmation avec seulement 3 lignes de code. Vérifiez-le.
Supposons que nous ayons ces liens (notez
data-href
plutôt quehref
) ou des boutons pour lesquels nous voulons avoir une confirmation de suppression:Ici
#confirm-delete
pointe vers une div popup modale dans votre HTML. Il devrait avoir un bouton "OK" configuré comme ceci:Maintenant, vous n'avez besoin que de ce petit javascript pour confirmer une action de suppression:
Ainsi, le
show.bs.modal
bouton de suppression d'événementhref
est défini sur URL avec l'ID d'enregistrement correspondant.Démo: http://plnkr.co/edit/NePR0BQf3VmKtuMmhVR7?p=preview
Recette POST
Je me rends compte que dans certains cas, il peut être nécessaire d'effectuer une requête POST ou DELETE plutôt que GET. C'est quand même assez simple sans trop de code. Jetez un œil à la démo ci-dessous avec cette approche:
Afficher l'extrait de code
Démo: http://plnkr.co/edit/V4GUuSueuuxiGr4L9LmG?p=preview
Bootstrap 2.3
Voici une version originale du code que j'ai fait quand je répondais à cette question pour Bootstrap 2.3 modal.
Démo : http://jsfiddle.net/MjmVr/1595/
la source
http://bootboxjs.com/ - derniers travaux avec Bootstrap 3.0.0
L'exemple le plus simple possible:
Depuis le site:
Voici un extrait de celui-ci en action (cliquez sur "Exécuter l'extrait de code" ci-dessous):
la source
la source
Je me rendrais compte que c'est une très vieille question, mais puisque je me suis demandé aujourd'hui une méthode plus efficace pour gérer les modaux de bootstrap. J'ai fait quelques recherches et trouvé quelque chose de mieux que les solutions présentées ci-dessus, qui peuvent être trouvées sur ce lien:
http://www.petefreitag.com/item/809.cfm
Chargez d'abord le jquery
Il suffit ensuite de poser toute question / confirmation à href:
De cette façon, le modal de confirmation est beaucoup plus universel et peut donc être facilement réutilisé sur d'autres parties de votre site Web.
la source
Grâce à la solution de @ Jousby , j'ai réussi à faire fonctionner la mienne également, mais j'ai constaté que je devais améliorer un peu le balisage modal Bootstrap de sa solution pour le rendre correctement, comme le montrent les exemples officiels .
Alors, voici ma version modifiée de la
confirm
fonction générique qui fonctionnait bien:la source
btnType = "btn-primary"
puis à modifier le code du bouton OK à contenirclass="btn ' + btnType + '"
. De cette façon, on peut passer un argument facultatif pour changer l'apparence du bouton OK, commebtn-danger
pour une suppression.J'ai trouvé cela utile et facile à utiliser, en plus il a l'air joli: http://maxailloud.github.io/confirm-bootstrap/ .
Pour l'utiliser, incluez le fichier .js dans votre page puis exécutez:
Il existe différentes options que vous pouvez lui appliquer, pour le rendre plus joli lorsque vous le faites pour confirmer une suppression, j'utilise:
la source
Je peux facilement gérer ce type de tâche en utilisant la bibliothèque bootbox.js. Au début, vous devez inclure le fichier bootbox JS. Ensuite, dans votre fonction de gestionnaire d'événements, écrivez simplement le code suivant:
Site officiel de bootboxjs
la source
La solution suivante est meilleure que bootbox.js , car
digimango.messagebox.js :
Pour utiliser digimango.messagebox.js :
la source
Vous pouvez essayer ma solution plus réutilisable avec la fonction de rappel . Dans cette fonction, vous pouvez utiliser la requête POST ou une logique. Bibliothèques utilisées: JQuery 3> et Bootstrap 3> .
https://jsfiddle.net/axnikitenko/gazbyv8v/
Code HTML pour le test:
Javascript:
la source
Lorsqu'il s'agit d'un grand projet pertinent, nous pouvons avoir besoin de quelque chose de réutilisable . C'est quelque chose que je suis venu avec l'aide de SO.
confirmDelete.jsp
reusingPage.jsp
Remarque: Cela utilise la méthode de suppression http pour la demande de suppression, vous pouvez le modifier à partir de javascript ou, l'envoyer en utilisant un attribut de données comme dans data-title ou data-url etc., pour prendre en charge toute demande.
la source
Si vous voulez le faire dans le raccourci le plus simple, alors vous pouvez le faire avec ce plugin .
Mais ce plugin est une implémentation alternative utilisant Bootstrap Modal . Et la véritable implémentation de Bootstrap est également très facile, donc je n'aime pas utiliser ce plugin car il ajoute un excès de contenu JS dans la page, ce qui ralentira le temps de chargement de la page.
Idée
J'aime le mettre en œuvre par moi-même de cette façon-
Ensuite, dans la fenêtre contextuelle, il y aura 2 boutons pour la confirmation.
Le code sera comme ceci (en utilisant Bootstrap ) -
Vous devez modifier l'action du formulaire en fonction de vos besoins.
Revêtement heureux :)
la source
Recette POST avec navigation vers la page cible et fichier Blade réutilisable
La réponse de dfsq est très agréable. Je l'ai modifié un peu pour répondre à mes besoins: j'avais en fait besoin d'un modal pour le cas où, après avoir cliqué, l'utilisateur serait également dirigé vers la page correspondante. L'exécution asynchrone de la requête n'est pas toujours ce dont on a besoin.
En utilisant
Blade
j'ai créé le fichierresources/views/includes/confirmation_modal.blade.php
:Maintenant, son utilisation est simple:
Pas beaucoup de changement ici et le modal peut être inclus comme ceci:
Juste en y mettant le verbe, il l'utilise. De cette façon, CSRF est également utilisé.
Cela m'a aidé, peut-être que ça aide quelqu'un d'autre.
la source