2016-11-14 25 views
2

我想知道如何通過按tab鍵調用angularjs函數?AngularJs:如何通過在文本框中輸入文本後按Tab鍵來調用angularjs函數?

var app = angular.module('myApp', []); 
 
app.controller('myCtrl', function($scope) { 
 
    
 
    
 
    
 
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script> 
 

 
<div ng-app="myApp" ng-controller="myCtrl"> 
 

 
First Name: <input type="text" ng-model="firstName"><br> 
 

 
</div>

如何使用angularJs,按下後的firstName調用函數,然後單擊標籤按鈕。因爲我是angularJs的新手,我知道ng-click,ng-change,但是我對此不知道。

請有人幫助我。

在此先感謝

+0

嗨維涅什,看看[本文檔(https://docs.angularjs.org/api/ng/directive/ngBlur),這是該功能,您」重新找? – George

+0

您的示例中沒有按鈕。當你說'點擊'時,你的意思是'按'?在中,鍵盤上的實際選項卡按鈕? – Robba

回答

4

你可以使用ngBlur

但是,如果您單擊輸入外部以及Tab鍵,它將運行該功能。

+0

完美工作。正如我所期待的..謝謝 –

1

你說點擊一個按鈕,但我以爲你要處理的標籤的keydown/KEYUP事件,因爲沒有標籤按鈕點擊。

var app = angular.module('myApp', []); 
 
app.controller('myCtrl', function($scope) { 
 
    var _this = this; 
 
    _this.firstName = ''; 
 
    _this.handleKeyDown = function($event) { 
 
     if ($event.which == 9) 
 
      alert('tab was pressed! Current value is: ' + _this.firstName); 
 
    } 
 

 
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script> 
 

 
<div ng-app="myApp" ng-controller="myCtrl as vm"> 
 

 
First Name: <input type="text" ng-model="vm.firstName" ng-keydown="vm.handleKeyDown($event)"><br> 
 

 
</div>

+0

工作好...謝謝你這麼多 –

+1

優秀!你會如此贊成未來訪問者的答案嗎? – Robba

相關問題