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 :

Remove() ne fonctionne plus après un clone()


Sujet :

jQuery

  1. #1
    Membre averti Avatar de SPACHFR
    Profil pro
    Paaaaaa
    Inscrit en
    Février 2004
    Messages
    557
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Paaaaaa

    Informations forums :
    Inscription : Février 2004
    Messages : 557
    Points : 400
    Points
    400
    Par défaut Remove() ne fonctionne plus après un clone()
    Bonjour,

    J'ai une fonction qui me permet de supprimer les éléments en fonction de leurs attributs html "rel". Je passe en argument un objet (partie d'une treeview).

    Cette fonction ne pose pas de problème. J'ai le résultat attendu.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    function newPf(obj){
     obj.find('li[rel="pslc"],[rel="vwlc"]').each(function(){$("#"+this.id).remove();});
    //autres traitements
    }
    Cependant, je souhaite cloner cette objet afin de réaliser la suppréssion sur l'objet cloné et non celui passé en argument. Je fais la copie, mais dans ce cas ma fonction ne "marche plus". Aucun élément est supprimé.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    function newPf(obj){
     var nobj = obj.clone(true);
     nobj.find('li[rel="pslc"],[rel="vwlc"]').each(function(){$("#"+this.id).remove();});
    //autres traitements
    }
    Cela fait quelques heures que je cherche, mais je n'arrive pas à comprendre pourquoi.
    Pourriez vous m'expliquer la raison et quelle solution à ce type de problème ?

    Merci.

  2. #2
    Membre averti Avatar de SPACHFR
    Profil pro
    Paaaaaa
    Inscrit en
    Février 2004
    Messages
    557
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Paaaaaa

    Informations forums :
    Inscription : Février 2004
    Messages : 557
    Points : 400
    Points
    400
    Par défaut
    Faut croire qu'il est nécessaire que je poste pour trouver la solution....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    function newPf(obj){
     var nobj = obj.clone(true);
     nobj.find('li[rel="pslc"],[rel="vwlc"]').each(function(){$(this).remove();});
    //autres traitements
    }
    Si quelqu'un pouvait m'expliquer pourquoi le code fonctionne si je met uniquement : $(this).remove(); alors que $("#"+this.id).remove(); ne fonctionne pas lorsque je travail sur la copie.

    Merci

  3. #3
    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 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $("#"+$(this).attr('id'))

  4. #4
    Membre averti Avatar de SPACHFR
    Profil pro
    Paaaaaa
    Inscrit en
    Février 2004
    Messages
    557
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Paaaaaa

    Informations forums :
    Inscription : Février 2004
    Messages : 557
    Points : 400
    Points
    400
    Par défaut
    En voyant la réponse c'est évident
    Merci pour l'info

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

Discussions similaires

  1. Les formulaires ne fonctionnent plus apres un export/import
    Par Altaria dans le forum Configuration
    Réponses: 3
    Dernier message: 17/09/2009, 11h58
  2. Include ne fonctionne plus après maj du serveur
    Par philou4212 dans le forum Langage
    Réponses: 16
    Dernier message: 02/08/2008, 09h05
  3. Requête ne fonctionne plus après avoir 'vider' les champs ?
    Par chapeau_melon dans le forum WinDev
    Réponses: 9
    Dernier message: 14/10/2007, 11h03
  4. Mon programme ne fonctionne plus après mise à jour de linux
    Par dybmans dans le forum GTK+ avec C & C++
    Réponses: 22
    Dernier message: 06/05/2007, 18h08
  5. function qui ne fonctionne plus après fractionnement Base
    Par Daniel MOREAU dans le forum Access
    Réponses: 1
    Dernier message: 25/05/2006, 20h37

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