Attacher un évènement à des contrôles Input Text
:salut:
J'ai un tableau dans lequel se trouve des contrôles Input Text. A chaque ligne, les contrôles se répètent en se numérotant.
Il faut que j'intercepte l'événement Change pour inscrire les valeurs dans le DOM sinon, du côté client (ASP/VB.net), les valeurs ne sont pas considéré comme changées.
Problème, cela n'a aucun effet, les contrôles sont pourtant bien trouvés si je debug le déroulement de la boucle:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| function TriggerChangeTextBox() {
for (var i = 1; i < 12; i++) {
var txtMS = $(':input[name$="txtMS' + i + '"]');
var txtPcentMS = $(':input[name$="txtPcentMS' + i + '"]');
var txtObs = $(':input[name$="txtObs' + i + '"]');
/* Permet de capturer l'évènement Change. */
txtMS.trigger('change');
txtPcentMS.trigger('change');
txtObs.trigger('change');
/* Inscription de la valeur du TextBox directement dans le DOM,
sinon la valeur ne sera pas considéré comme changée côté serveur. */
txtMS.change(function () {
txtMS.attr('value', txtMS.val());
});
txtPcentMS.change(function () {
txtPcentMS.attr('value', txtPcentMS.val());
});
txtObs.change(function () {
txtObs.attr('value', txtObs.val());
});
}
} |
Du côté client, les contrôles sont nommés de la sorte (exemple pour la ligne 1):
Code:
1 2 3
| ctl00_MainContent_txtMS1
ctl00_MainContent_txtPcentMS1
ctl00_MainContent_txtObs1 |
Si quelqu'un voit où ça peut clocher... D'ailleurs, est-ce qu'il y a un autre moyen d'ajouter les valeurs dans le DOM ?
:merci: