Как показать сообщения об ошибках для минимальных и максимальных значений поля ввода с числовым типом?
Как установить / показать сообщения об ошибках для минимальных и максимальных значений, которые я установил в поле ввода с типом чисел, используя угловой js.
<input type="number" min="0.1" max="30"/>
6 ответов
Пожалуйста, используйте код ниже, чтобы показать сообщение об ошибке для минимального и максимального значения в поле ввода чисел с помощью проверки angularjs.
Для ng-maxlength и ng-minlength для поля Тип ввода числа.
<form name="myForm">
<input type="number" name="count" ng-model="count" max="30" min="0.1">
<span style="color:red" ng-show="myForm.user.$dirty && myForm.user.$invalid">
<span ng-show="myForm.user.$error.min">Count should be above 0.1.</span>
<span ng-show="myForm.user.$error.max">Count should be below 30.</span>
</span>
</form>
Для maxlength и minlength для поля ввода текста.
<form name="myForm">
<input type="text" name="username" ng-model="username" ng-minlength="5" ng-maxlength="15">
<span style="color:red" ng-show="myForm.username.$dirty && myForm.user.$invalid">
<span ng-show="myForm.username.$error.minlength">Username should be minimum 5 character.</span>
<span ng-show="myForm.username.$error.maxlength">Username should be maximum 15 character.</span>
</span>
</form>
Вам нужно заключить в капсулу input
внутри form
и условно отображать сообщения об ошибках:
var app = angular.module('app', []);
app.controller('test', function($scope) {
$scope.model = {};
});
.error {
color: red;
}
input {
width: 100px;
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="app" ng-controller="test">
<form novalidate name="myForm">
<label for="model.data">Enter Data:</label>
<input type="number" name="data" ng-model="model.data" min="0.1" max="30" />
<div class="error" ng-show="myForm.data.$dirty && myForm.data.$error.min" ng-message="min">Unexpected minimum data</div>
<div class="error" ng-show="myForm.data.$dirty && myForm.data.$error.max" ng-message="max">Unexpected maximum data</div>
</form>
</div>
Просто:
<p class="help-block" ng-message="min || max">please enter in between 0.1 to 30.</p>
или же
<p class="help-block" ng-message="min">Min 0.1 required</p>
<p class="help-block" ng-message="max">Max 30 Allowd</p>
Добавлять required
в поле ввода.
вот пример кода и скрипка
https://jsfiddle.net/nc4n61bk/
<form>
<input type="number" min="0.1" max="30" required/>
<input type="submit"/>
</form>
.valueError{
color: rgb(255, 0, 0);
padding-top: 5px;
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="app" ng-controller="test">
<form novalidate name="myForm">
<div class="form-field required-field">
<label for="field-value">Value</label>
<input type="number" id="field-value" name="valueInput" class="small form-control input-md ng-valid ng-dirty" ng-model="value" min="5" placeholder="Value"/>
<div class="valueError" ng-show="form.value.$dirty && form.value.$error.min "> Value must be atleast 5min</div>
</div>
</form>
</div>
var app = angular.module('app', []);
app.controller('test', function($scope) {
$scope.model = {};
});
.error {
color: red;
}
input {
width: 100px;
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="app" ng-controller="test">
<form novalidate name="myForm">
<label for="model.data">Enter Data:</label>
<input type="number" name="data" ng-model="model.data" min="0.1" max="30" />
<div class="error" ng-show="myForm.data.$dirty && myForm.data.$error.min" ng-message="min">Unexpected minimum data</div>
<div class="error" ng-show="myForm.data.$dirty && myForm.data.$error.max" ng-message="max">Unexpected maximum data</div>
</form>
</div>