Je valide une zone de texte et si la validation échoue, le focus doit être sur la même zone de texte. J'ai cherché sur internet mais je n'ai trouvé aucune réponse appropriée pour cela. Lorsque j'ouvre ma page asp dans Firefox, l'attention se porte sur un autre contrôle après la fermeture du message d'alerte et en chrome le message d'alerte ne peut pas être fermé, il réapparaît chaque fois que je clique sur le bouton ok ou bouton de fermeture de la fenêtre d'alerte . Comment puis-je définir le focus sur la même zone de texte si la validation échoue?javascript se concentrer sur la zone de texte sur la validation échouée fonctionnant différemment dans chrome et firefox
<div class="form-group">
<label for="inputAge" class="col-md-2 control-label" id="lblAge">Age</label>
<div class="col-md-9">
<input type="text" id="inputAge" placeholder="35 or 25D or 5M" runat="server" required="required" maxlength="3" onblur="return ValidateAge()" />
</div>
</div>
<script type="text/javascript">
function ValidateAge() {
var str = document.getElementById("inputAge").value;
var number_regex = /^[1-9]\d*$/;
if (str.slice(-1) === 'm') {
var number_part = str.slice(0, -1);
if (!number_regex.test(number_part)) {
alert("invalid age1");
document.getElementById("inputAge").focus();
return false;
}
else if (number_part > 12) {
alert("invalid age2");
document.getElementById("inputAge").focus();
return false;
}
else {
return true;
}
}
}
</script>
peut vous changer onblur à ONCHANGE si cela fonctionne? ou s'il vous plaît déboguer du navigateur si vous trouvez pourquoi son erreur à venir ou est-ce aller au côté serveur et perdre le focus? – Yogesh