一尘不染

angularjs将焦点移至Enter上的下一个控件

angularjs

最好的方法是,在单击表单内部的Enter时,将焦点转到下一个输入,而不是使用angularjs提交表单。

我有一个包含许多字段的表单,客户习惯于按Enter键移至下一个输入(来自桌面应用程序)。当用户点击Enter时,angularjs保存表单。我喜欢改变这个。可能吗


阅读 312

收藏
2020-07-04

共1个答案

一尘不染

我建议制定一个自定义指令。这样的事情。我还没有测试。

.directive('focus', function() {
  return {
    restrict: 'A',
    link: function($scope,elem,attrs) {

      elem.bind('keydown', function(e) {
        var code = e.keyCode || e.which;
        if (code === 13) {
          e.preventDefault();
          elem.next().focus();
        }
      });
    }
  }
});

这样的事情应该起作用。您可能不得不周到一些东西。祝好运。

2020-07-04