2016-06-28 5 views
0

テンプレートは2つのタブを持つ 'タブ'です。最初のタブでは、私はinputフィールドを持っています。アプリが開始されてinputフィールドがフォーカスされているときに動作していますが、2番目のタブに切り替えてから最初のタブに戻ったときに、入力がフォーカスを失います。入力フィールドに焦点を合わせます

タブ2から1に移動したときにフォーカスを合わせたいと思います。要素の外側をクリックすると、フォーカスも失われます。私は実際にはinputフィールドに常に焦点を当ててほしい。

.directive('focusMe', function($timeout) { 
    return { 
    scope: { trigger: '=focusMe' }, 
    link: function(scope, element) { 
     scope.$watch('trigger', function(value) { 
     if(value === true) { 
      //console.log('trigger',value); 
      //$timeout(function() { 
      element[0].focus(); 
      scope.trigger = true; 
      //}); 
     } 
     }); 
    } 
    }; 
}); 


<label class="item item-input" focus-me> 
    <input type="number" class="somett" ng-model="code" ng-model-options="{ debounce: 100 }" placeholder="Ready" ng-change="load(code) " focus-on="focusTextInput" autofocus> 
</label> 

答えて

1

あなたはView LifeCycle and Eventsを使用することができます。

は、私はいくつかすでに述べた解決策を試してみました。

これをコントローラに追加します。

$scope.$on('$ionicView.enter', function() { 
    $scope.$broadcast("focusTextInput"); 
}); 
+0

ありがとうございます – Mark

関連する問題