Précédent   Forum des professionnels en informatique > PHP > Outils > Zend > Zend Framework > Zend_Form
Zend_Form Forum d'entraide pour le composant Zend_Form du Zend Framework (création de formulaires, helpers, AJAX etc.). Avant de poster -> FAQ Zend_Form.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 31/05/2011, 17h49   #1
Membre Expert
 
Avatar de Alexandre T
 
Inscription : mai 2002
Messages : 1 022
Détails du profil
Informations personnelles :
Âge : 35
Localisation : France, Meurthe et Moselle (Lorraine)

Informations forums :
Inscription : mai 2002
Messages : 1 022
Points : 1 121
Points : 1 121
Par défaut Zend_Dojo_Form_Element_Checkbox relié à un Zend_Dojo_Form_Element_Text

Bonjour,

Je recherche actuellement une solution à un problème tout simple. Je souhaite géré une liste de cases à cocher. Si la case est cochée, j'active un champ de type texte qui lui est associé. L'utilisateur peut alors y saisir une valeur décimale. Si la case est décochée, le champ est désactivé.

Dans la fonction de persistance du formulaire (persistData), je souhaite sauvegarder uniquement les valeurs dont la case est cochée. Les champs dont la case n'est pas cochée ne sont pas sauvegardé. Je sais comment je vais gérer cela dans cette fonction. Seulement, je ne sais pas comment, ni où mettre en place et gérer le javascript qui va me permettre de dire "L'utilisateur vient de cocher la 17ème case à cocher, j'active le 17ème champ texte" ni "l'utilisateur vient de décocher la 13ème case à coche, je désactive le 13ème champ texte.

Selon vous, quelle serait la meilleure pratique ? Ça m'ennuie de gérer cela directement dans la vue qui se limite actuellement à un
Code :
<?php echo $this->form; ?>
J'aimerai gérer cela dans ma classe de formulaire Application_Form_Agents qui hérite de Zend_Dojo_Form. Mais je ne vois pas comment m'y prendre. Une idée ?

Merci !
__________________
Alexandre T.

PHP5/MySQL5 Codes prêts à l'emploi
30 projets avec codes sources complets pour créer diaporamas photos, chat, arbre généalogique, statistiques de visites, création de graphiques, moteur de recherche, Sudoku etc...

Mes articles
Alexandre T est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/06/2011, 09h09   #2
Candidat au titre de Membre du Club
 
Homme Matthieu Di Blasio
Inscription : septembre 2008
Messages : 17
Détails du profil
Informations personnelles :
Nom : Homme Matthieu Di Blasio
Localisation : Suisse

Informations forums :
Inscription : septembre 2008
Messages : 17
Points : 11
Points : 11
J'ai peur de dire une bêtise mais, ne faut-il pas simplement utiliser un fichier javascript inclut dans ton action ?

Le fichier javascript utiliserait la class css des cases à cocher pour binder un evenement onclick qui prendrait le prochain élément de type text dans l'arborescence html (un petit coup de .next('input') sur la sélection en cours) et le tour est joué, non ?

Je n'ai jamais utilisé dojo mais il utilise sizzle comme jquery tu devrais donc avoir quelque chose comme ça :

Code :
1
2
3
4
5
 
$(".checkboxClass").bind("click", function (event){
    var nextInput = $(this).next('input');
    nextInput.prop('disabled', (nextInput.prop('disabled') == true));
});
Sarlak est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h48.


 
 
 
 
Partenaires

Hébergement Web