Javascript

Afficher un message de confirmation avant suppression en JavaScript

Dans cet article, nous allons explorer comment mettre en œuvre cette fonctionnalité en utilisant JavaScript.

Lorsque vous développez des applications web interactives, il est souvent nécessaire d’ajouter des fonctionnalités pour éviter les actions accidentelles de l’utilisateur, notamment lors de la suppression de données importantes. Une des meilleures pratiques consiste à demander une confirmation avant de permettre à l’utilisateur de supprimer des éléments.

Pourquoi un message de confirmation ?

Imaginez que vous avez une application de gestion d’articles où les utilisateurs peuvent supprimer des articles. Sans confirmation, un simple clic sur le bouton de suppression pourrait entraîner la perte irréversible de données. En ajoutant un message de confirmation, vous donnez à l’utilisateur l’opportunité de confirmer ou d’annuler son action, réduisant ainsi les risques d’erreurs.

Implémentation en JavaScript

Voici comment vous pouvez ajouter un message de confirmation avant de supprimer un élément en JavaScript :

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Message de confirmation avant suppression</title>
</head>
<body>

<h2>Supprimer un élément avec confirmation</h2>

<!-- Un bouton pour déclencher la suppression -->
<button >

Dans cet exemple :

  • Un bouton est créé avec un événement onclick qui appelle la fonction confirmDelete() lorsque l’utilisateur clique dessus.
  • La fonction confirmDelete() affiche une boîte de dialogue avec un message de confirmation.
  • Si l’utilisateur clique sur « OK », la fonction deleteItem() est appelée pour effectuer la suppression.
  • Si l’utilisateur clique sur « Annuler », aucune action n’est entreprise, mais vous pouvez ajouter du code supplémentaire selon vos besoins.

Voici comment intégrer ces cas particuliers dans l’implémentation avec des extraits de code :

1. Suppression en masse :
function confirmDeleteAll() {
    if (confirm("Êtes-vous sûr de vouloir supprimer tous les éléments sélectionnés ?")) {
        // Logique pour supprimer tous les éléments sélectionnés
        deleteSelectedItems();
    } else {
        console.log("Suppression annulée.");
    }
}
2. Données sensibles :
function confirmSensitiveDelete() {
    var password = prompt("Veuillez saisir votre mot de passe pour confirmer la suppression :");
    if (password === "motdepasse123") {
        deleteSensitiveItem();
    } else {
        alert("Mot de passe incorrect. Suppression annulée.");
    }
}
3. Undo ou annulation :
var deletedItems = [];

function confirmAndDeleteWithUndo() {
    if (confirm("Êtes-vous sûr de vouloir supprimer cet élément ?")) {
        // Logique pour supprimer l'élément
        var deletedItem = deleteItem();
        deletedItems.push(deletedItem);
        setTimeout(function() {
            // Annuler la suppression après 5 secondes
            undoDelete(deletedItem);
        }, 5000);
    } else {
        console.log("Suppression annulée.");
    }
}

function undoDelete(deletedItem) {
    // Logique pour restaurer l'élément supprimé
    console.log("Élément restauré :", deletedItem);
}
4. Personnalisation du message de confirmation :
function confirmCustomMessage(itemId, itemName) {
    if (confirm("Êtes-vous sûr de vouloir supprimer l'élément '" + itemName + "' (ID : " + itemId + ") ?")) {
        deleteCustomItem(itemId);
    } else {
        console.log("Suppression annulée pour l'élément '" + itemName + "'.");
    }
}
5. Traitement des erreurs :
function deleteItemWithErrorHandling() {
    // Logique pour supprimer l'élément
    if (deleteItemSuccessful) {
        console.log("Élément supprimé avec succès !");
    } else {
        alert("Erreur lors de la suppression. Veuillez réessayer plus tard.");
    }
}
6. Accessibilité :

Assurez-vous d’utiliser des balises sémantiques appropriées pour le message de confirmation et que le message est correctement annoncé par un lecteur d’écran. Voici un exemple HTML simple pour la boîte de dialogue de confirmation :

<div role="dialog" aria-labelledby="confirmation-dialog-title" aria-describedby="confirmation-dialog-message">
    <h3 id="confirmation-dialog-title">Confirmation de suppression</h3>
    <p id="confirmation-dialog-message">Êtes-vous sûr de vouloir supprimer cet élément ?</p>
    <button >

En intégrant ces extraits de code dans votre application web, vous pouvez fournir une expérience utilisateur plus robuste et adaptée à différents scénarios de suppression.

Conclusion

Ajouter un message de confirmation avant de permettre la suppression d’éléments est une pratique recommandée pour garantir une meilleure expérience utilisateur et éviter les erreurs coûteuses. En utilisant JavaScript, vous pouvez facilement mettre en œuvre cette fonctionnalité dans vos applications web, offrant ainsi à vos utilisateurs une couche de sécurité supplémentaire lors de la manipulation des données.

AZ

Recent Posts

Modèle Excel Calcul Section de Câble : Outil Automatisé pour Dimensionner une Installation Électrique

Derrière chaque tableau électrique, chaque moteur ou chaque circuit d’alimentation se cache un élément souvent…

11 heures ago

Fiche de Traçabilité HACCP : Modèle Word Complet et Professionnel

Une fiche de traçabilité HACCP n'attire généralement l'attention que lorsqu'une information devient difficile à retrouver.…

21 heures ago

Différence entre DLC et DDM : deux dates, deux significations, deux niveaux de risque

Deux dates figurent régulièrement sur les emballages alimentaires : la DLC et la DDM. Souvent…

1 jour ago

Logiciel de gestion de parc matériel gratuit : centraliser, suivre et maîtriser ses équipements sans investissement lourd

Ordinateurs, imprimantes, véhicules, outils industriels, équipements informatiques, appareils de mesure ou matériels de chantier :…

1 jour ago

Fiche de Traçabilité Alimentaire Word : Modèle Principal et Fiches Complémentaires

Chaque produit alimentaire laisse derrière lui une multitude d'informations souvent invisibles pour le consommateur :…

1 jour ago

Tableau DLC Excel : cuisines, laboratoires et unités agroalimentaires

La scène est familière. Un lundi matin, quelques minutes avant le début du service, un…

1 jour ago

This website uses cookies.