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

Bibliothèques & Frameworks Discussion :

Boucle sur éléments [Prototype]


Sujet :

Bibliothèques & Frameworks

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 13
    Par défaut Boucle sur éléments
    Bonjour à tous,

    depuis peu je me suis mis à utiliser prototype, et j'ai un petit soucis pour une boucle.
    Voici mon objectif : j'ai une liste créer à partir de ma base de données.
    dans ma balise <li> j'ai un <span class="deleteCat"></span>. Et je veux que sur le clic du span sa m'appelle une fonction.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    Voici mon code : 
     
    function init(){
     
    	//gestion des suppressions
    	$$('.deleteCat').each(function(p) {
    		Event.observe($(p), 'click', deleteCategory(p), false);
    	});
     
    }
     
    Event.observe(window, 'load', init, false);
    Mon problème c'est que la fonction "deleteCategory" est appelé au chargement de ma page et pas sur le click de mon span.

    Est-ce un problème de structure de boucle?
    Avez-vous une idée.

    En vous remerciant d'avance de votre aide.

    @+

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mars 2003
    Messages : 46
    Par défaut
    Essais avec ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    function init(){
     
    //gestion des suppressions
    $$('.deleteCat').each(
                            function(p) 
    			{
    			    Event.observe($(p), 'click', function(event)
                                                                              { 				                                                                            deleteCategory(p);
    									   }, false);
    			});
     
    }
    Je pense que la fonction appeler pour repondre a l'evenement prend un event en parametre

    Tu devrais peut etre aussi declarer ta fonction deleteCategory de la maniere suivante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    var deleteCategory = function(p)
    {
     // ton code ici
    }
    PS: Je n'ai pas teste si le code fournit fonctionne, je l'ai fait de tete donc il faudra peut etre l'adapter un peu ...

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 13
    Par défaut
    Merci. C'est bon comme ça . L'evenement se fait bien uniquement sur le clic de mes span.

    Merci beaucoup cereal59.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 13
    Par défaut
    Euhh... en faite j'ai crié victoire trop tot.

    Car mon evenement se gere bien au click. Mais sa marche une fois uniquement.

    Situation : j'ai ma liste avec un span "delete" a coté.
    Quand je clique sur mon span ca marche, mais si je veux supprimer un deuxieme element de ma liste , la ça ne marche plus.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mars 2003
    Messages : 46
    Par défaut
    Peux tu montrer ton code ?

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 13
    Par défaut
    Code : 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
     
    //supprime une categorie
     var deleteCategory = function (p){
    	new Ajax.Updater(
    		'listeCategory',//l'id de la liste (<ul>)
    		'r_category.php',
    		{
    			method: 'post',
    			parameters: 'deleteCategory='+ p.id,
    		}
    	);
    }
     
    // init onload
    function init(){
     
    	//gestion des suppressions
    //pour chaque span qui se trouve dans ma liste comme ceci : //<li>monTexte<span> X </span></li>
    	$$('.deleteCat').each(function(p) {//mes span ont la class "deleteCat"
    		Event.observe($(p), 'click', function (event){deleteCategory(p);}, false);
    	});
    }
     
     
    Event.observe(window, 'load', init, false);

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

Discussions similaires

  1. Comportement étrange boucle sur éléments
    Par laloune dans le forum jQuery
    Réponses: 1
    Dernier message: 24/09/2014, 10h46
  2. Boucle for sur éléments
    Par Antoniom dans le forum jQuery
    Réponses: 3
    Dernier message: 28/05/2014, 08h18
  3. boucle sur liste d'éléments xml
    Par awalter1 dans le forum Général Python
    Réponses: 0
    Dernier message: 25/07/2011, 15h22
  4. Faire une boucle sur plusieurs éléments
    Par Invité dans le forum VB.NET
    Réponses: 4
    Dernier message: 06/04/2011, 17h30
  5. [ksh] Boucle sur le premier élément de chaque ligne d'un fichier
    Par psykoleouf dans le forum Shell et commandes GNU
    Réponses: 9
    Dernier message: 06/12/2007, 16h13

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