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

Zend_Form PHP Discussion :

Zend_Form_Select et attribut sur les options


Sujet :

Zend_Form PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Inscrit en
    Mai 2008
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 3
    Par défaut Zend_Form_Select et attribut sur les options
    Voilà j'ai beau chercher a fond dans la doc, je n'arrive pas à trouver comment mettre des attribut aux balises option de mon select que je génère avec new Zend_Form_Element_Select():

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $clientlist       = Client::getInstance()->getClientList();
    $selectclient   = new Zend_Form_Element_Select('client_id');
    $selectclient   ->setLabel('Client')
                        ->addMultiOptions($clientlist);
    En fait sur chaque option je voudrais mettre un onclick pour remplir automatiquement le reste du formulaire avec les infos du client sélectionné...

    Merci d'avance pour votre aide, ca fait déjà un moment que je cherche et je vois vraiment pas comment faire, si quelqu'un à déjà eu ça à faire et a trouvé la solution...

  2. #2
    Expert confirmé
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Par défaut
    Bonjour,

    ce ne sont pas sur les options que tu peux placer ton onclick, c'est sur l'élément select lui-même. Et pour cela, il te suffit d'utiliser la méthode setAttrib() de l'objet Zend_Form_Element_Select :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $my_select->setAttrib('onclick', '...');
    ou encore :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $my_select->onclick = '...';
    FAQ XML
    ------------
    « Le moyen le plus sûr de cacher aux autres les limites de son savoir est de ne jamais les dépasser »
    Giacomo Leopardi

  3. #3
    Futur Membre du Club
    Inscrit en
    Mai 2008
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 3
    Par défaut
    le probleme du onclick sur le select lui meme, c'est que l'utilisateur n'a meme pas le temps de choisir le client dans la liste avant que l'action ne se déclenche...il click pour faire dérouler la liste, et l'action se déclenche tout de suite...
    Cette option est viable avec un onmouseup...

    Par contre, moi ce que je voudrais c'est pouvoir ajouter un attribut (ici onclick, mais demain peut etre autre chose, comme un style spécifique de couleur de fond pour chaque option...) à chaque option séparément.

    ce ne sont pas sur les options que tu peux placer ton onclick, c'est sur l'élément select lui-même
    Donc si j'ai bien compris ta réponse...c'est impossible de rajouter un attribut à une option dans un select? ou tu proposais juste un solution...
    Si c'est possiblie, je voudrais juste savoir comment faire, indépendamment de mon exemple...

  4. #4
    Expert confirmé
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Par défaut
    Citation Envoyé par Gunshin Sama Voir le message
    le probleme du onclick sur le select lui meme, c'est que l'utilisateur n'a meme pas le temps de choisir le client dans la liste avant que l'action ne se déclenche...il click pour faire dérouler la liste, et l'action se déclenche tout de suite...
    C'est exact, l'événement généralement utilisé pour gérer les sélections dans un <select> est onchange et non pas onclick.
    Citation Envoyé par Gunshin Sama Voir le message
    Par contre, moi ce que je voudrais c'est pouvoir ajouter un attribut (ici onclick, mais demain peut etre autre chose, comme un style spécifique de couleur de fond pour chaque option...) à chaque option séparément.
    Zend_Form_Element_Select ne prévoit pas la possibilité de déclarer des attributs pour les options. Si tu veux pouvoir le faire, tu vas devoir créer une classe qui hérite de Zend_Form_Element_Multi et redéfinir ses méthodes xxxMultiOptions() pour qu'elles prennent en charges des déclarations d'attributs supplémentaires sur les options ; tu devras de plus créer un "view helper" héritant de formSelect qui fera apparaître ces attributs dans le code XHTML généré pour le Select. Rien de bien compliqué, mais ce sont des tâches qui impliquent quand même qu'on mette un peu le nez dans les profondeurs du framework.
    FAQ XML
    ------------
    « Le moyen le plus sûr de cacher aux autres les limites de son savoir est de ne jamais les dépasser »
    Giacomo Leopardi

  5. #5
    Futur Membre du Club
    Inscrit en
    Mai 2008
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 3
    Par défaut
    Ok, donc maintenant je suis sur que c'est impossible XD...

    je vais utiliser onchange pour mon probleme cité précedement...et comme je n'ai rien compris aux viewhelpers (et que je ne les utilise pas), je verrais plus tard pour intégrer les attribut aux options d'un select.

    Merci beaucoup pour ton aide.

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

Discussions similaires

  1. [Continuum] Question sur les options (build)
    Par bassemeco dans le forum Intégration Continue
    Réponses: 8
    Dernier message: 07/04/2008, 11h46
  2. Connaitre l'ajout de méthodes/attributs sur les composants standards
    Par bubulemaster dans le forum Composants VCL
    Réponses: 3
    Dernier message: 30/01/2008, 09h36
  3. Agir sur les options et liens de will_paginate
    Par abir84 dans le forum Ruby on Rails
    Réponses: 2
    Dernier message: 19/11/2007, 09h18
  4. [Abonnement] Petite question sur les options
    Par Zipyz dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 4
    Dernier message: 02/08/2006, 07h53

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