ng-change работает только для возврата и первой записи - PullRequest
0 голосов
/ 30 июня 2018
<input type="email" ng-keypress="testFunc()" ng-model="text"
    id="femail" class="form-control margin" name="femail"
    placeholder="Email*"/>
<p style="color: red;">The input field has changed {{count}} times.</p>

JS

$scope.count = 0;
$scope.testFunc = function() {
    $scope.count++;
};

HTML

<input type="email" ng-change="testFunc()" ng-model="text"
       id="femail" class="form-control margin" name="femail"
       placeholder="Email*"/> 
<p style="color: red;">The input field has changed {{count}} times.</p>

JS

$scope.count = 0;
$scope.testFunc = function() {
    $scope.count++;
};

Если я введу: «abc». Результат должен быть: 3, но я получаю: 0, если я удаляю, используя backspack, я получаю: 1 Я должен получить count ++ для каждого ввода, который я не получаю. Я пытаюсь этот пример:

https://w3schools.com/angular/tryit.asp?filename=try_ng_ng-change

в моем коде. Спасибо

Пояснение: В приведенном выше примере w3school моя разница в коде заключалась в том, что я использовал

<input type="email"> 

и w3 использовал

<input type="text">

Таким образом, для «ввода текста» каждое нажатие кнопки рассматривалось как изменение, но в моем случае каждое изменение происходит, когда электронное письмо изменяется или оно имеет некоторые другие функции для ng-change с

"input type="email".

Итак, я получил счет прямо сейчас, взяв

<input type="text" />

Ответы [ 2 ]

0 голосов
/ 04 июня 2019

Вы можете использовать

<input type="text" /> 

Это намного лучшее решение для работы вашего счетчика. Если вы хотите счетчик, используйте type = "text", а не "email" . Браузер относится к ним обоим по-разному.

0 голосов
/ 30 июня 2018

Я просто скопировал / вставил пример из W3 (вы предоставили) в файл test.txt, переименовал его в test.html и запустил в Firefox. Все работало нормально. Мне не нужно было ничего редактировать. Попробуйте сначала то, что я сделал, и вы узнаете, опечатка ли это или что-то еще. Но код работает правильно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...