2015-10-17 1 views
-2

У меня есть форма с двумя полями, пользователя и пароль, как поля будут переплетены с ngModelПрокрутка к началу страницы при вводе текста на входе с нг-модели angularjs

<form method="POST" name="loginForm" novalidate class="loginForm"> 
    <input ng-required="true" ng-model="loginRequest.UserName" class="textControls userCtrl" type="text" name="UserName" id="id_username" /> 
    <input ng-required="true" ng-model="loginRequest.Password" type="password" name="Password" id="id_password"/> 
    <button type="submit" id="submitLogin" class="blueBtn">Ingresar</button> 
</form> 

Моя проблема при вводе первой две буквы на каждом поле в мобильных устройствах, страница прокручивается вверх в iphone, теряя фокус поля. это поведение исчезает при удалении ng-модели в поля ввода.

+0

Это было бы намного легче диагностировать, если вы включили достаточно кода для воспроизведения вашей проблемы. – buzzsaw

+0

@buzzsaw Я не могу воспроизвести эту ошибку на скрипке извините – xzegga

ответ

0

Ваш сценарий выглядит так, как будто функция отправки запускает обновление страницы. По умолчанию, если вы не вручную остановите распространение события, он обновит страницу, если вы используете форму submit.

Если вы используете форму, просто добавьте директиву ng-click к вашему <button> и позвоните по номеру event.preventDefault();.

Если вы используете услугу $http, чтобы опубликовать данные своей формы, вы можете избежать этого автоматически.

+0

прокрутка запускает время aeach, которое набирает символ в каждом текстовом поле ввода. – xzegga

+0

Добавьте этот 'ng-model-options = {{updateOn: 'blur'}" 'к вашему вход. Поэтому он обновляет модель только на Blur. –

+0

Проблема не в обновлении ng-model, проблема в том, что страница прокручивается вверх, когда обновляется модель: S – xzegga