javascript - Comment puis-je empêcher la saisie de type = nombre d'ajouter des signes plus, des signes moins et plusieurs points décimaux?
给我你的怀抱
给我你的怀抱 2017-05-16 13:37:46
0
6
1388

Merci à tous d'avance. J'ai écrit une entrée avec type = nombre. En raison des besoins professionnels, seuls des chiffres peuvent être saisis dans cette entrée, et les signes plus et moins ne peuvent pas être saisis.
Je voulais à l'origine juger la valeur de l'entrée et supprimer manuellement les signes plus, les signes moins et les points redondants, mais j'ai découvert qu'une fois la valeur saisie illégale, la valeur de l'entrée était convertie en une chaîne vide ''. De cette façon, je ne peux pas obtenir la valeur en entrée.
J'y réfléchis depuis longtemps mais je ne connais pas la solution. S'il vous plaît, aidez-moi, merci~
Au fait, j'ai écrit la page en vue~~~

给我你的怀抱
给我你的怀抱

répondre à tous(6)
为情所困

Utilisez une expression régulière pour faire correspondre '^[-]?[0-9]*.?[0-9]+(eE?[0-9]+)?$'

<input type="text" />

Vous pouvez utiliser cette méthode pour surveiller les modifications de la valeur d'entrée. Si vous constatez que la vérification échoue, vous serez invité.

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Welcome</title>
</head>
<body>
<form>
    <input id="inputNumber" type="text" name="test" onblur="checkNumber()">
</form>

<script type="text/javascript">
 function checkNumber(){
    var inputNumber = document.getElementById('inputNumber').value;
    if(!/^[-]?[0-9]*\.?[0-9]+(eE?[0-9]+)?$/.test(inputNumber)){
        alert('Please input a valid number!');
        return false;
    }
}
</script>
</body>
</html>
某草草

Publiez vos js et jetez un oeil

大家讲道理

onkeyup="this.value=this.value.replace(/D/g,'')" onafterpaste="this.value=this.value.replace(/D/g,'')"

滿天的星座

type=number ne devrait pas pouvoir empêcher directement les utilisateurs de saisir des signes positifs et négatifs, e et plusieurs points décimaux.
Il faut encore le juger par la valeur de l'entrée.
En ce qui concerne le problème selon lequel la valeur d'entrée est illégale et que la valeur d'entrée est convertie en une chaîne vide,
Vous pouvez changer le type d'entrée en texte, puis utiliser des expressions régulières et les remplacer pour supprimer les non-chiffres et plusieurs points décimaux.

淡淡烟草味

Ensuite, vous pouvez utiliser v-model pour lier une valeur, puis surveiller la valeur via watch. Mais lorsque vous trouvez une valeur illégale, supprimez simplement la chaîne illégale

.
phpcn_u1582

<input type="tel" />

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal