/ / Перевірте модель angularjs перед встановленням значення - javascript, angularjs

Перевірте модель angularjs перед встановленням значення - javascript, angularjs

У мене є поле введення, де дозволено лише додатні числа.

<input id="charge-hours" type="text" class="charge-position-hours-edit" placeholder="0" ng-model="charge.hours">

Як контролювати налаштування ng-моделі.

Я б хотів написати попередню умову перед значенням, встановленим у області. Щось на зразок

$scope.precondition = function (value) {
if (!isNan(value)) {
$scope.value=value;
}else{
//do nothing
}
}

Чи можливо це у javascript / angularjs? У Джейві був би сетер для цього.

РЕДАГУВАТИ

Моє запитання було недостатньо зрозумілим.

Я дуже хочу, щоб у полі введення вводилися лише додатні числа, і лише позитивні числа повинні бути прив’язані до ng-моделі angularjs.

Чи є спосіб зберегти старий Value, якщо я використовую ng change? Тоді я можу написати щось на кшталт

if (condition===true) //ok
else $scope.value=oldValue;

Відповіді:

0 для відповіді № 1

якщо ваша проблема полягає в тому, щоб переконатися, що значення є цілим і позитивним, ви можете використовувати HTML5 для перевірки цього.

Перевірте це посилання номер.

Щоб підтвердити номер, ви можете використовувати ng-change директива для управління ним, якщо ви хочете більше використовувати контроль ng-клавіш.

Також розгляньте "користувальницька перевірка"частина документації з angularjs - так само, як зазначив Патрік Феррейра.


-1 для відповіді № 2

Спробуйте це:

<input id="charge-hours" type="text" class="charge-position-hours-edit" placeholder="0" ng-model="charge.hours" ng-change="precondition()">

джерело