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

Plan de reprise d’activité informatique Excel (PRA informatique) : modèle XLS, exemple, RTO/RPO et tableau de bord

Un PRA efficace aide l’entreprise à redémarrer ses applications critiques après une panne, un ransomware…

3 jours ago

Plan de continuité d’activité Excel : modèle PCA XLS, générateur dynamique et exemples par secteur

Chaque organisation est confrontée à des événements susceptibles de perturber son fonctionnement : cyberattaque, panne…

3 jours ago

AWS TCO Calculator : Simulateur, Calcul du TCO, ROI et Modèle Excel

La plupart des projets de migration vers AWS commencent par une estimation des coûts mensuels.…

3 jours ago

Simulateur TCO Chariot Élévateur Diesel vs Électrique | Calcul ROI, Coût Total et Comparatif

Le prix affiché sur un devis raconte rarement toute l'histoire. Deux chariots élévateurs peuvent sembler…

3 jours ago

Note d’information aux locataires : modèle Word, exemples, obligations et guide pratique

La gestion d'un immeuble ou d'une résidence repose autant sur la qualité des équipements que…

4 jours ago

DOE numérique : guide complet, modèles BIM, IFC, DOE dématérialisé et logiciels

Le DOE numérique transforme la manière dont les professionnels du bâtiment préparent, organisent et transmettent…

5 jours ago

This website uses cookies.