使用AngularJS的ng-keypress指令来捕获按键事件,并使用AngularJS的$parse服务来执行要调用的click事件。以下是一个指令的示例,可以在任何元素上使用它来捕获Enter键并触发click事件。
angular.module('myApp').directive('onEnterClick', function($parse) {
return {
restrict: 'A',
link: function(scope, element, attrs) {
var onEnterClickFn = $parse(attrs.onEnterClick);
element.bind('keypress', function(event) {
if(event.which === 13) {
onEnterClickFn(scope);
}
});
}
};
});
在HTML中,使用指令on-enter-click并像下面这样绑定click事件:
当用户在文本框或按钮上按下Enter键时,myClickFn函数将被调用。