IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

jQuery Discussion :

Masquer une ligne d'un tableau qui a été supprimée


Sujet :

jQuery

  1. #1
    Membre éprouvé
    Avatar de Rony Rauzduel
    Homme Profil pro
    En formation Architecte logiciel
    Inscrit en
    Décembre 2008
    Messages
    638
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : En formation Architecte logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2008
    Messages : 638
    Points : 1 128
    Points
    1 128
    Par défaut Masquer une ligne d'un tableau qui a été supprimée
    Bonjour,

    J'ai conçu un script permettant de supprimer (masquer) une ligne d'un tableau contenant des annonces, par contre lors du chargement du DOM la ligne apparait de nouveau dans le tableau.
    Il faudrait concevoir un script disant au DOM de charger le tableau tel qu'il a été modifié avant le rechargement du DOM, mais je ne vois pas comment procéder pour récupérer une "image" du tableau avant le chargement du DOM.

    Code Javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     
    $(document).ready(function() {
        $("#supprimer_annonce").submit(function(event){
            event.preventDefault();	//lors de la soumission du formulaire
            $("#loader").show();        
            $.ajax({
                url: $(this).attr('action'),
                type: $(this).attr('method'),
                data: $(this).serialize(), 
                dataType : 'text', 
                cache: false,			
                success: 
                function(data){                
                    if(data.substr(0,2)=="ok"){
                        $("#loader").hide(); // on cache le loader d'attente Ajax
                        $("input[type='checkbox']:checked").each(function() { //pour chaque <input type = 'checkbox'> qui sont séléctionnés
                            var ligneSupprimee = $(this).attr('id') ; //on récupère l'id de <input> car ils ont les memes id que les lignes du tableau
                            $('.formErreur').fadeIn().text("Suppression de l'annonce réussie!");
                            $("tr#"+ligneSupprimee).remove(); //on concatène tr +ligneSupprimée pour avoir la ligne à supprimer                        
                            $('#loader').hide();                        
                            $('.formErreur').fadeOut(5000);							
                            $(':input').not(':submit').val("");
                        //window.location.reload();
                        });//fin $("input[type='checkbox']:checked")		
                    } // fin if(data == "ok")                
                    if(data.substr(0,4)=="null" ){
                        $('.formErreur').fadeIn().text("Vous n'avez selectionné aucune annonce!");
                        $('.formErreur').fadeOut(5000);
                        $('#loader').hide();
                    }
                } // fin function(data)           
            }); // fin $.ajax()              
            // on vide les champs du formulaire SAUF le bouton radio et celui de soumission
            $('#supprimer_annonce').not(':submit').val('');	        
        }); // fin $("#supprimer_annonce").submit()   
    });
    La ligne est bien supprimée mais elle apparait de nouveau en tapant sur F5.

    Merci d'avance.
    Transact.

  2. #2
    Invité
    Invité(e)
    Par défaut
    La question est : comment sont chargée les annonces initialement (d'où proviennent les données) ?

    Il faut que, quand tu émettes ta requête de suppression, tu modifies la source des données pour que l'annonce soit supprimée.

  3. #3
    Membre éprouvé
    Avatar de Rony Rauzduel
    Homme Profil pro
    En formation Architecte logiciel
    Inscrit en
    Décembre 2008
    Messages
    638
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : En formation Architecte logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2008
    Messages : 638
    Points : 1 128
    Points
    1 128
    Par défaut
    Mon but n'est pas "réellement" de supprimer l'annonce, c'est pour cela qu'en PHP je fais un UPDATE au lieu d'un DELETE dans ma requête PDO.
    Le "problème" est un problème d'affichage, je souhaite que l'utilisateur croit que son annonce a été supprimée mais en fait elle est masquée pour qu'il ne puisse pas la voir à chaque fois qu'il va dans son compte utilisateur.

  4. #4
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Dans ce cas, ça n'a rien à voir avec JavaScript. C'est du côté de PHP qu'il faut gérer ça.
    Par exemple affecter un flag à chaque article indiquant s'il doit être affiché ou non et utiliser ce flag pour savoir quels articles présenter à l'utilisateur.

    Pour info, même s'il existe le Storage dans l'API HTML5, le contexte JavaScript ne survit pas au rechargement de la page...

  5. #5
    Membre éprouvé
    Avatar de Rony Rauzduel
    Homme Profil pro
    En formation Architecte logiciel
    Inscrit en
    Décembre 2008
    Messages
    638
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : En formation Architecte logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2008
    Messages : 638
    Points : 1 128
    Points
    1 128
    Par défaut
    Ok. J'ai trouvé la solution idéale grace à votre soutien en utilisant une structure conditionnelle en PHP.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Masquer une ligne de tableau
    Par eric41 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 29/09/2014, 15h45
  2. [Vxi3] Masquer une ligne d'un tableau
    Par Krole78 dans le forum Webi
    Réponses: 0
    Dernier message: 01/06/2012, 13h18
  3. [CR 2008] tableau croisé dynamique(masquer une ligne sous condition)
    Par futurist dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 29/09/2010, 15h57
  4. case à cocher qui colore une ligne d'un tableau
    Par gastoncs dans le forum IHM
    Réponses: 2
    Dernier message: 14/02/2008, 06h40
  5. CSS : un lien qui prend toute une ligne d'un tableau.
    Par pmithrandir dans le forum Mise en page CSS
    Réponses: 7
    Dernier message: 20/04/2005, 17h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo