J'utilise LiveValidation pour les éléments d'entrée. Ceux-ci viennent dans une table récupérée avec un appel AJAX, et peuvent être des multiples de 4, entre 4 et 36.Substituer à eval() l'utilisation du constructeur LiveValidation
J'utilise eval pour appeler le constructeur pour LiveValidation car le nombre d'éléments d'entrée peut varier après chaque AJAX appel et je ne pouvais pas penser à une autre façon (je n'ai pas beaucoup d'expérience avec JavaScript).
J'utilise ceci:
$("input[type=text]", tableElement).each(function(index) {
eval("var temp_" + index + " = new LiveValidation(this, { wait: 0, validMessage: ' ' });");
eval("temp_" + index + ".add(Validate.Numericality, { onlyInteger: true });");
eval("temp_" + index + ".add(Validate.Presence, { failureMessage: 'Cannot be blank' });");
});
Quelle serait une meilleure façon de faire parvenir à la même sans l'utilisation de eval comme je sais qu'il doit être utilisé avec parcimonie.