angularjs的键盘事件的绑定
推荐button
方法一:ng内置指令
<button ng-click="login()" ng-keypress="todosomething($event)" class="btn btn-success btn-lg" ng-disabled="loginform.$invalid">
登录
</button>
说明:在对应的控制器中的$scope上绑定一个todosomething方法
$scope.todosomething=function($event){
if($event.keycode==13){//回车
login();
}
}
方法二:自定义指令
html
<button ng-click="login()" ng-enter="login()" class="btn btn-success btn-lg" ng-disabled="loginform.$invalid">
登录
</button>
指令
myapp.directive('ngenter', function () {
return function (scope, element, attrs) {
element.bind("keydown keypress", function (event) {
if (event.which === 13) {
scope.$apply(function () {
scope.$eval(attrs.ngenter);
});
event.preventdefault();
}
});
};
});
总结:两种方法都能实现敲回车登录的功能,不过推荐指令的方式,对$scope的污染比较低
关于angularjs指令事件可以参考:
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!