AngularJS:使用Enter键将焦点转移到下一个TextBox

时间:2015-07-27 05:11:31

标签: angularjs

我有一个包含多个字段的表单。当我打开表单时,默认情况下应将第一个字段设置为焦点。当我按下回车键时,它必须移动到下一个文本框。我已经尝试了以下代码默认焦点正在工作,但输入密钥不起作用。

SQL> SELECT empno,
  2         ename,
  3         CASE
  4            WHEN sal > avg(sal) OVER(ORDER BY NULL) THEN
  5               1
  6            ELSE
  7               0
  8         END flag
  9  FROM emp;

     EMPNO ENAME            FLAG
---------- ---------- ----------
      7369 SMITH               0
      7499 ALLEN               0
      7521 WARD                0
      7566 JONES               1
      7654 MARTIN              0
      7698 BLAKE               1
      7782 CLARK               1
      7788 SCOTT               1
      7839 KING                1
      7844 TURNER              0
      7876 ADAMS               0
      7900 JAMES               0
      7902 FORD                1
      7934 MILLER              0

14 rows selected.

SQL>

HTML

app.directive('focus',function($timeout) {
        return {
            restrict: 'A',
            scope : {
                trigger : '@focus'
            },
            link : function(scope, elem,attrs) {
                scope.$watch('trigger', function(value) {
                    if (value === "true") {
                        $timeout(function() {
                            elem[0].focus();
                        });                         
                    }                           
                });
                elem.bind('keydown', function(e) {
                    var code = e.keyCode || e.which;
                    if (code === 13) {
                      e.preventDefault();
                      elem.next().focus();
                    }
                  });
            }
        };
    });

0 个答案:

没有答案