设置条件焦点在angularjs中的某些字段

时间:2014-11-12 07:11:09

标签: angularjs

大家好,所有工程师,我已经看到了很多问题并提出了关于将重点放在某些输入字段上的答案,但我没有找到满足我要求的任何内容,现在我的问题是我们是否有多个输入字段并且我们不知道在哪里设置焦点,并且在某些条件的基础上我想将重点放在从控制器返回的某个字段上,是否有类似" document.getElementbyId("&#34) )聚焦&#34。就像在javascript中使用" ng-model"或任何东西,任何帮助将不胜感激

1 个答案:

答案 0 :(得分:5)

当传入的表达式真实时,该指令将导致元素获得焦点。

Live Demo

用法:

<!-- set `$scope.foo` to a truthy value when this input should be focused -->
<input type="text" focus-when="foo">
<button ng-click="foo = true">Focus input.</button>

指令:

.directive('focusWhen', function() {
  return {
    scope: {
      focusWhen: '='
    },
    link: function($scope, $element) {

      $scope.$watch('focusWhen', function(shouldFocus) {
        if (shouldFocus) {
          $element[0].focus();
        }
      });

    }
  };
})