2

フォームといくつかの必須フィールドを持つ Ionic アプリケーションを作成しています。

フォームが送信され、有効でない場合は、Ionic の $ionicPopup サービスを使用して警告メッセージを表示します。

私の問題は、ユーザーが「ENTER」または(Android内の「Go」ボタン)を押して、フォーム送信を呼び出し、ポップアップを閉じて別のポップアップを開くことができることです。

ここでこれが起こっているのを見ることができます:

サンプルコード

入力にフォーカスして ENTER を押します。エラー メッセージが表示されたら、もう一度 ENTER を押して閉じます。別のポップアップが開きます (おそらく、背景の背後にある入力にまだフォーカスがあるためか、フォーム内でモーダルが作成されているためです。

その動作を回避する方法はありますか? $ionicPopup 内で ENTER を使用して、フォームを再度送信せずに閉じるか、少なくとも新しいポップアップを表示する前にアクティブなポップアップを閉じるためのコードを用意する必要がありますか? 複数のポップアップを開いたときにマウス (またはタップ) でメッセージを閉じようとすると、ユーザーはメイン画面に戻る前に他のすべてのダイアログを閉じるように求められるためです。

ポップアップへの参照を取得して close() メソッドを呼び出そうとできることはわかっていますが、うまくいきませんでした。最終的に、前のアラートが完全に閉じられる前に新しいアラートが開き、背景が画面に永久にスタックします。

助けてくれてありがとう。

4

1 に答える 1