|
Blog | Tornar |
26/11/2010
Actualitzant un formulari dinàmicament amb Dojo i AJAX.
Darrerament he estat desenvolupant aplicacions amb PHP al servidor i Dojo com a framework de desenvolupament Javascript.
La veritat és que totes dues solucions estan força bé, amb coses a favor i coses en contra, com sempre. Potser escriuré alguna cosa més extensa més endavant.
Feia uns dies que donava voltes a un problema, i fins avui no he trobat la solució:
(a partir d’aquí, és necessari conèixer Dojo)
Tinc un formulari Dojo, i dinàmicament n’actualitzo una part fent una crida AJAX amb Dojo contra el servidor, que em retorna la part del formulari actualitzat.
Coses a tenir en compte:
- Enlloc d’un DIV per contenir la part que s’actualitza, és molt millor usar el component de Dojo “dojo.form.ContentPane”. El principal avantatge és que automàticament llegeix el HTML que rep via AJAX i fa la conversió dels widgets de Dojo.
- És MOLT IMPORTANT que els widgets actualitzats tinguin ID i NAME. Si els falta el NAME, el formulari no els reconeix com a part seva i aleshores no s’envien al fer el submit, encara que -misteriosament- es poden trobar amb un “dijit.byId()”.
Això ho lligo més al propi llenguatge, o la seva implementació, que a Dojo.
El simple fet de no posar el NAME m’havia fet donar voltes i voltes fins que algú en un fòrum (ja buscaré el link i el posaré aquí) explicava en dues línies que ambdós atributs són importants -almenys per això-.