Текстовое поле Chrome теряет фокус

#javascript #html #css #angularjs

#javascript #HTML #css #angularjs

Вопрос:

Привет, у меня есть веб-приложение, написанное на angular. Я вижу странную ошибку в Chrome, которую я не могу воспроизвести в IE (обычно это наоборот)

У меня есть текстовое поле ввода типа number — когда я набираю более 2 символов, курсор теряет фокус, и мне приходится нажимать на него, чтобы продолжить ввод. То же самое происходит при попытке удаления из текстового поля.

Так что, если я хочу ввести 1000, например.

Я набираю 10, затем текстовое поле теряет фокус. Затем я должен щелкнуть текстовое поле, ввести 2-й ноль — фокус снова теряется, а затем снова щелкнуть по нему и ввести последний ноль. Если я хочу удалить это обратно до 10. Я удаляю последний нулевой фокус, который теряется, и приходится снова щелкнуть в текстовом поле, чтобы удалить 2-й ноль.

Я не могу понять, что является причиной этого.

отображаемая разметка для текста выглядит следующим образом:

 <td class="right-align muted ng-scope">
            <input name="txtTotal" type="number" min="0" max="99999" ng-model="item.Total" ng-bind="item.Total | number: 2" ng-change="updateTotal(item)" onkeydown="return isNumberKeyAndDecimal(event, 2, 5)" style="width:150px" class="ng-pristine ng-valid ng-binding ng-valid-min ng-valid-max ng-touched">
        </td>
 

Я подумал, что это может быть код в onkeydown — я могу вставить эту функцию, если требуется, однако я удалил onkeydown из кода, выполнил жесткое обновление страницы, и ошибка все еще происходит (и приведенный выше код работает в IE)

Кто-нибудь видел это поведение раньше или получил какие-либо указания на то, в чем может быть причина или исправление?

Комментарии:

1. Работает ли это с обычными числовыми вводами, которые не ng-model привязаны к ним?

2. Сохраняется ли ошибка при удалении ng-bind директивы?

3. Проверит и подтвердит

4. @RobertAKARobin — это работает, как и ожидалось, для обычного ввода — это, кстати, в режиме начальной загрузки, если это будет иметь какое-либо значение — на самом деле я не могу удалить угловые директивы вокруг ввода

5. @Lex — нет, это работает без этой директивы, но я не могу ее удалить?