Bonjour
J'essaye de faire un formulaire dynamique avec possibilité d'ajouter des relations à la volée (par exemple, pouvoir ajouter autant d'auteur que l'on veut à un article).
J'ai actuellement une jolie fonction qui fonctionne très bien pour les champs input classiques et les champs avec date-picker:
Par contre, même si on voit bien les nouveaux champs de type combobox de ext s'afficher, on ne voit pas leurs données ! Impossible d'avoir la liste déroulante avec les options.
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 addRelation = function(_caller) { var parentFieldset = Ext.getCmp($('#'+_caller.id).prev('fieldset').attr('id')); var prevFieldset = $('#'+_caller.id).prev('fieldset').find('fieldset:last'); prevFieldset = Ext.getCmp(prevFieldset.attr('id')); nextFieldset = prevFieldset.cloneConfig(); nextFieldset.cascade(changeId); parentFieldset.add(nextFieldset); parentFieldset.doLayout(); } /** * Function avoiding id's dupplication */ function changeId(_target) { if(_target.autoCreate !== undefined) { _target.autoCreate.id = Ext.id(); var nameRE = new RegExp('\\[(\\d+)\\]'); var matches = nameRE.exec(this.name); var tmp = _target.autoCreate.name; _target.autoCreate.name = tmp.replace(nameRE, '['+(parseInt(matches[1],10)+1)+']'); } }
La liste n'est même pas générée à la fin du body comme elle l'est avec les combobox qui sont initialement créés.
Existe-t-il un moyen de les faire fonctionner ?
Je trouve ça étrange qu'un framework aussi puissant ne gère pas ce genre de cas de figure
Merci d'avance pour votre aide !
Partager