input绑定enter事件跳转

绑定dom元素enter事件有两种方法,个人推荐第二种

方法一:由于没有ngEnter指令,所以可以自己扩展一个(转载)

指令代码如下:

'use strict';

define(function (require, exports, module) {
    module.exports = function (ngModule) {
        ngModule.register.directive('ngEnter', function () {
            return {
                restrict: 'A',
                require: '?ngModel',
                link: function ($scope, element, attrs, controller) {
                    element.bind("keydown keypress", function (event) {
                        if(event.which === 13) {
                            $scope.$apply(function (){
                                $scope.$eval(attrs.ngEnter);
                            });
                            event.preventDefault();
                        }
                    });
                }
            }
        });
    }
});
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22


方法二:自己在项目中的使用

js:

scope.goPages = function(e) {
var keycode = window.event ? e.keyCode : e.which;
if (keycode == 13) {
你要写实现的事件
}
event.preventDefault();
};

html:

<input type="text" placeholder="跳转" οnfοcus="this.placeholder=''" οnblur="this.placeholder='跳转'" ng-model="current" ng-keyup="goPages($event)"/>




方法三:用ng-keypress指令:(转载)

<input class="add-inner-input" id="name" placeholder="回车添加,设置日期点右侧" ng-keypress="($event.which === 13)?addTask():0"/>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值