Autoriser deux possibilités
Bonjour,
je suis en train de me battre avec une expression régulière (et c'est elle qui gagne! ) pour n'autoriser que :
chiffres 0 à 9 (exemple 12 / 2 / 0 ) + un tiret (-) + chiffres 0 à 9
sous forme 1-12 ou 0-12 ou 12 (seul) , mais j’aimerais également autoriser le terme "NA"
return /^(?!-)\d*[-]?\d*$|[N,A]/.test(value); });.
Celui.ci est OK pour la séquence de chiffres 1-2 etc, mais autorise toutes les lettre si on commence par le N
Une idée ?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| $("#Equipes").inputFilter(function(value) {
return /^(?!-)\d*[-]?\d*$|[N,A]/.test(value); });
// Ajoute un filtre sur les entrees selon le regex en paramèetre
(function($) {
$.fn.inputFilter = function(inputFilter) {
return this.on("input keydown keyup mousedown mouseup select contextmenu drop", function() {
if (inputFilter(this.value)) {
this.oldValue = this.value;
this.oldSelectionStart = this.selectionStart;
this.oldSelectionEnd = this.selectionEnd;
} else if (this.hasOwnProperty("oldValue")) {
this.value = this.oldValue;
this.setSelectionRange(this.oldSelectionStart, this.oldSelectionEnd);
}
});
};
}(jQuery)); |