我有一個輸入:Angularjs:指令不叫
<table>
...
<td style="width:59px"><input ng-model="myModel.propertyOne" ng-blur="persistValue(myModel)" enter-as-tab></td>
<td style="width:59px"><input ng-model="myModel.propertyTwo" ng-blur="persistValue(myModel)" enter-as-tab></td>
其指令
angular.module('bioandbioApp').directive('enterAsTab', function() {
return function (scope, element, attrs) {
element.bind("keydown keypress", function (event) {
if(event.which === 13) {
event.preventDefault();
var elementToFocus = element.next('td').find('input')[1];
if(angular.isDefined(elementToFocus))
elementToFocus.focus();
}
});
};
});
該指令被稱爲當用戶按下Enter鍵,將焦點設置到下一個標籤的輸入。
我的問題是調用該指令,但未調用elementToFocus.focus(),因此未設置焦點。
我不明白爲什麼。有人知道嗎?
http://jsfiddle.net/tomy29/vpaqt29d/105/
感謝
小心創建一個小提琴或蹦牀? –
好吧,jsfidlle完成 – user1260928