2010-07-16 3 views
0

Est-ce que quelqu'un sait comment on pourrait faire la boucle sur tous les éléments d'un formulaire en utilisant Dojo? (Le formulaire lui-même a été créé par ZendFW Zend_Dojo_Form)Comment faire une boucle dans les éléments de formulaire/champs avec Dojo

Ce que j'essaie de faire est de parcourir tous les champs/entrées dans le formulaire, et si possible, changer leur valeur d'id. Cependant, même s'il n'est pas possible de changer l'ID des champs, j'aimerais quand même savoir comment parcourir les éléments du formulaire et accéder à leurs propriétés/valeurs.

Merci!

Répondre

1

Zend ajoute une variable de Dijits rendue sur la page appelée 'zendDijits'. Itérer à travers cela, obtenir l'élément d'origine par identifiant (il est le premier élément du tableau), puis en utilisant dojo définir l'ID en utilisant:

for(var i in zendDijits) { 
var theid = zendDijits[i]['id']; 
dojo.byId(theid).id = 'new'; 
} 

jamais fait auparavant mais cela ne devrait travailler

+0

Hmm, c'est intéressant, je n'ai même pas pensé à ça. Cela me semble une bonne solution, je vais devoir l'essayer. Merci! – user387302

1

Comme éléments sont des objets, il est facile:

foreach($form->getElements() as $element) { 
    $element->id = 'new'; 
} 

$ form est évidemment votre objet sous forme de votre classe. C'est à dire:

$form = new My_Form_Class; 

Comme je l'ai dit, c'est un objet donc les propriétés peuvent être changées facilement. var_dump un élément pour voir ce que vous pouvez changer si vous n'êtes pas sûr

+0

Merci d'avoir répondu à , mais j'espérais accéder aux éléments via javascript (donc je peux les ajuster après le chargement de la page). Des idées? – user387302

Questions connexes