進入我發現this question當有人按下 「Enter」 鍵提交表單非常有用:模糊的按鍵輸入字段上角
的Javascript:
angular.module('yourModuleName').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': event});
});
event.preventDefault();
}
});
};
});
HTML:
<div ng-app="" ng-controller="MainCtrl">
<input type="text" ng-enter="doSomething()">
</div>
我想知道的是當按下「回車」鍵時將字段設置爲模糊。 doSomething()
看起來會模糊發件人字段?
我想離開ngEnter
指令,因爲我想重新使用它來執行其他功能。
更新: 我知道我可以創造出一個指令只是模糊(這就是我有現在),但我想要做的是能夠做這樣的事情:
<input type="text" ng-enter="this.blur()">
或者我如何傳遞當前元素作爲參數?
<input type="text" ng-enter="doBlur(this)">
[角JS觸發blur事件](HTTP的可能重複:// stackoverflow.com/questions/23300329/angular-js-trigger-blur-event) – SoluableNonagon 2014-12-01 18:58:26
另外,http://stackoverflow.com/questions/18389527/angularjs-submit-on-blur-and-blur-on-keypress – SoluableNonagon 2014-12-01 18:58:56
@ SoluableNonagon我更新了我的問題,我知道我可以製作一個自定義指令來模糊,但我想保留指令的通用性 – coopersita 2014-12-01 19:49:34