pluggins et factorisation
Bonjour,
Je crée un formulaire dans lequelle je dois rentrer un certain nombre de mesures. Il y a donc un aspect très répétitif à mon code et à l'aspect de la page.
Code:
1 2 3 4 5
| o Setting1 o Setting2 o Setting3 o UserSetting
bloc graphique de réglage de val 1
bloc graphique de réglage de val 2
...
bloc graphique de réglage de val N |
En haut 3 radiobutton correspondant à 3 jeu de valeurs
si je clique sur Setting1 toutes les valeurs val 1..N se mettent à jour avec le jeu 1
si je clique sur Setting2 toutes les valeurs val 1..N se mettent à jour avec le jeu 2
si je clique sur Setting3 toutes les valeurs val 1..N se mettent à jour avec le jeu 3
Quand le jeu courant est "setté" l'utilisateur peut alors changer certaines valeurs et je veux que le radiobutton UserSetting soit alors checké automatiquement.
J'ai donc un bloc
Code:
1 2 3 4
| $.fn.myForm= function (params) {
...
return this;
}; |
à l'intérieur duquel je boucle de 1 à N grâce au tableau ids = ["val1", ..., "valN"]
Code:
1 2 3 4 5
| $.each(ids, function(i, value) {
var curVal = $('<div></div>');
form.append(curVal );
curVal .factorisation({'id':ids[i]});
} |
"factorisation" était lui même un pluggins dans lequel j'ai factorisé tout ce qui est nécessaire au graphisme et aux calculs de ma ligne.
Dans factorisation, j'ai un <input> avec son propre identifiant (prefixé avec "bpx_" et suffixé avec l'id passé en paramètre. au final j'ai donc N input identifiés bpx_val1 bpx_val2 ... bpx_valN
Comment écrire que sur l'évènement "onchange" de chacun de ses input, je dois checker radiobutton UserSetting ?
J'arrive très bien à programmer en descendant "si je clique sur le radiobutton 1 alors chacun des input prend la valeur ...."
Mais en ascendant, "si un input est changé alors jouer sur les radiobuttons du niveau au dessus" je n'y arrive pas.
Pourtant dans mon plugging général form, j'accède bien aux objects créés dans factorisation, mais
Code:
1 2 3 4 5
| $.each(ids, function(i, value) {
var curVal = $('<div></div>');
form.append(curVal );
curVal .factorisation({'id':ids[i]});
$("#bpx_" + this).change(function() { alert("change !!!"); }; } |
et autres siouxeries restent sans le moindre effet :(