Я создаю ионическое приложение с формой и некоторыми обязательными полями.
Когда форма отправлена, и если она недействительна, я показываю предупреждающее сообщение, используя службу Ionic's ionicPopup.
Моя проблема: пользователь может нажать кнопку «ENTER» или («Перейти» в Android), чтобы вызвать отправку формы и закрыть всплывающее окно, которое вызывает открытие другого всплывающего окна.
Вы можете увидеть это здесь происходит:
Фокус ввод, нажмите ENTER, и когда появится сообщение об ошибке, нажмите кнопку ENTER еще раз, чтобы закрыть его. Будет открыто другое всплывающее окно (скорее всего, поскольку вкладка за фоном все еще имеет фокус или, может быть, потому, что модаль создается в форме - снова нажав ENTER).
Есть ли способ избежать такого поведения? Может быть, ВВЕДИТЕ в $ ionicPopup, чтобы закрыть его, не отправив форму еще раз, или, по крайней мере, иметь какой-либо код для закрытия любых активных всплывающих окон, прежде чем отображать новый? Поскольку при открытии нескольких всплывающих окон, если вы попробуете мышь (или коснитесь), чтобы закрыть сообщение, пользователю будет предложено закрыть все остальные диалоги перед отправкой обратно на главный экран.
Я знаю, что могу попытаться получить ссылку на всплывающее окно и вызвать метод close(), но это не совсем сработало для меня. В конце концов новое предупреждение открывается до того, как предыдущий будет полностью закрыт, и фон навсегда застрянет на экране.
Спасибо за помощь.
вам нужно потерять фокус с элементов управления, поэтому, когда нажмите enter, ответ будет только на оповещение –
Я выяснил, что он не работает. Оказывается, проблема заключается в том, что всплывающее окно не может быть закрыто нажатием клавиши enter. Когда я нажимаю кнопку ввода во второй раз, я снова отправляю форму. Отсюда открытие другого всплывающего окна. И я изо всех сил стараюсь сосредоточиться на форме, потому что у моей страницы нет видимых элементов управления, кроме элементов управления формой (например, страница входа). –