Ionic-framework: ポップアップに入力を集中する

作成日 2014年03月18日  ·  7コメント  ·  ソース: ionic-team/ionic-framework

一部のポップアップは、最初に入力に焦点を合わせる必要があります。 ただし、これをテストして、iOSで正常に機能することを確認する必要があります。

最も参考になるコメント

オートフォーカスを行うには、このテンプレート文字列をプロンプトに追加する必要がありました

template: '<input ng-model="data.response" type="text" placeholder="{{ placeHolder }}" autofocus>'

全てのコメント7件

ポップアップはすでに最初に入力に焦点を合わせています。 ただし、これにはバグがあります。 ポップアップは常に最後の入力要素に焦点を合わせます。 それは本当に最初に焦点を合わせる必要があります。

フォーラム: http
サンプル: http

PRは数分で到着します。

これはWebではうまく機能しますが、iOSでは機能しないことがわかりました...コードは実行されますが、入力がフォーカスされず、キーボードが開きません。

@michaelnatkin :config.xmlで、次の設定があることを確認してください。

<preference name="KeyboardDisplayRequiresUserAction" value="false" />

iOSでは、これがfalseに設定されていない限り、フィールドでフォーカスを取得してキーボードを開くことはできません。

@calendeeOMGありがとうございます!! 問題が解決しました。 Ionicチームは、そのメモをionicPopupドキュメントに追加するとよいでしょう。

@calendee iOSで動作しますが、Androidデバイスでは動作しません。 または私が忘れた何かがありますか?

@felquis 、私は同じ問題を抱えていました。 この問題と#1176を確認した後、最終的にhttps://github.com/driftyco/ionic/commit/49a295638d6c60b7e17936cfb345665f6b1954d1を見つけ、オートフォーカス入力のテンプレートを使用してアプリケーションを修正することができました。

diff --git a/www/js/app.js b/www/js/app.js
index 8e7afcd..1131dfb 100644
--- a/www/js/app.js
+++ b/www/js/app.js
@@ -57,6 +57,7 @@ angular.module('todo', ['ionic'])
   $scope.newProject = function() {
     $ionicPopup.prompt({
       title: 'Project name',
+      template: '<input autofocus>'
     })
     .then(createProject)
   };

オートフォーカスを行うには、このテンプレート文字列をプロンプトに追加する必要がありました

template: '<input ng-model="data.response" type="text" placeholder="{{ placeHolder }}" autofocus>'

このページは役に立ちましたか?
0 / 5 - 0 評価