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 :

Suppression d'un noeud avec JQuery


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Markos22
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2016
    Messages
    198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2016
    Messages : 198
    Par défaut Suppression d'un noeud avec JQuery
    Bonjour,

    Sur une page de mise à jour d'une base de données concernant des biens immobiliers, j'ai une liste des biens existant dans la base. J'ai créé une fenêtre modale bootstrap qui s'ouvre lorsque l'on clique sur un bouton "supprimer le bien sélectionné". Un bouton "confirmer" sur cette fenêtre modale permet de confirmer la suppression du bien dans la base de données.

    Problème : comme j'ai ouvert une fenêtre modale, la page ne se rafraîchit pas, et le bien supprimé figure toujours sur la liste (alors qu'il est bien supprimé de la base de données).

    J'ai donc pensé à supprimer le nœud correspondant, avec du code jquery ! Mais l'affichage de la base est une boucle foreach. Qu'à cela ne tienne, j'ai donc récupéré l'id du nœud en question grâce à l'id du bien dans la base de données, et je le passe en variable à mon script jquery.

    L'idée semble bonne, puisque si l'on regarde le code html généré, l'id du nœud à supprimer est bien récupéré...

    ...Sauf que ça marche pas : la ligne du bien à supprimer est toujours affichée. Voici mon code jquery :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $('#confirmer').click(function(){
        var monBien = '<?php echo '#bien-item-'.$_GET['bien']?>';
        $(monBien).remove();
    });
    où GET['bien'] correspond à l'id du bien sélectionné, qui figure dans l'id du nœud à supprimer, qui est un lien vers la même page avec une variable passée dans l'url, ce qui permet de sélectionner le bien en question :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a class="list-group-item list-group-item-action" href="form_modif.php?bien=1" id="bien-item-1">
    Pourquoi la ligne (la balise <a> cliblée) n'est-elle pas supprimée, alors que le reste du code fonctionne bien (le bien est bien supprimé de la base de données) ?

    Merci de vos réponses

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    regarde dasn el code source généré comme le php est interprété
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $('#confirmer').click(function(){
        var monBien = '<?php echo '#bien-item-'.$_GET['bien']?>';
        $(monBien).remove();
    });
    ça donne quoi dans le code source ?

    Elle est bien dans un ready() cette instruction ?
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 683
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 683
    Par défaut
    Citation Envoyé par Markos22 Voir le message
    Voici mon code jquery :
    affichez avec "console.log" le contenu de la variable pour vérifier que la valeur est celle que vous souhaitez

    d'ailleurs affichez aussi le résultat du sélecteur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    console.log(monBien);
    console.log($(monBien));

  4. #4
    Membre confirmé Avatar de Markos22
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2016
    Messages
    198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2016
    Messages : 198
    Par défaut
    @SpaceFrog,

    Le code source généré, je l'ai vérifié :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $(document).ready(function(){
    				$(['data-toggle=modal']).modal();
    				$('#confirmer').click(function(){
    					var monBien = '#bien-item-15';
    					$(monBien).remove();
    					console.log(monBien);
    				});
    			});
    Donc, la valeur de la variable monBien est bonne. Comme tu le vois, @mathieu, j'ai bien inclus un console.log, mais rien ne s'affiche. A moins qu'il y ait quelque chose qui m'échappe dans la console de Firefox...

  5. #5
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    tu as bien un élément avec id '#confirmer' ?
    et un seul ?
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  6. #6
    Membre confirmé Avatar de Markos22
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2016
    Messages
    198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2016
    Messages : 198
    Par défaut
    Oui, il s'agit du bouton submit qui déclenche la suppression en base :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="submit" class="btn btn-primary" id="confirmer" name="confirmer" value="confirmer">

  7. #7
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    ben oui ... mais ...

    c'est un bouton submit !!!
    donc tu soumets le form et tu recharges la page !!
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

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

Discussions similaires

  1. [XSLT 1.0] copie d'une structure xml avec suppression de certains noeuds
    Par oliv47 dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 04/06/2015, 19h05
  2. Suppression champs avec jquery
    Par jules_diedhiou dans le forum jQuery
    Réponses: 9
    Dernier message: 10/10/2012, 11h48
  3. [JDOM] Suppression de noeud avec conservation des fils
    Par Carabi dans le forum Format d'échange (XML, JSON...)
    Réponses: 7
    Dernier message: 16/03/2009, 21h14
  4. [DOM] suppression d'un noeud fils xml en JAVA
    Par alexandre54 dans le forum Format d'échange (XML, JSON...)
    Réponses: 5
    Dernier message: 20/03/2003, 09h44
  5. créer un noeuds avec des paramétres
    Par Toxine77 dans le forum XMLRAD
    Réponses: 5
    Dernier message: 21/01/2003, 16h11

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