0
我正在編寫用於驗證的指令。我輸入現場員工number.when我進入第一個數字我不能夠得到價值是什麼我entered.when我進入第2位 我能夠得到第一位數..無法在angularjs中正確使用按鍵事件指令
HTML代碼
<input type="text" maxlength="7" ng-model="empno" emp-validator >
指令代碼
app.directive('empValidator',function(){
return {
restrict: 'A',
link : function(scope, elem, attr, ctrl)
{
var keyCode = [8,9,37,39,48,49,50,51,52,53,54,55,56,57,96,97,98,99,100,101,102,103,104,105,110];
elem.bind("keydown", function(event) {
if($.inArray(event.which,keyCode) == -1) {
scope.$apply(function(){
event.preventDefault();
});
}
console.log("Emp No"+scope.empno);
}
}
我第一次得到僱主沒有定義。
我想你沒有閱讀或理解我的問題。當我第一次輸入東西時,我在Mozilla控制檯中出現'undefined'錯誤。當我第二次輸入東西時,我得到了我第一次輸入的值。 – sar
啊,對不起,那是因爲你沒有價值,模型不會更新,直到按下按鍵或鍵盤。所以你正在處理的事件是在你按下的鍵被應用之前觸發的。如果該值爲aaa,並且按下b鍵,則該事件發生時該值仍將爲aaa。 – Brocco
我應該使用哪個事件? – sar