2016-06-10 77 views
-1

我怎樣才能調用一個函數,只有在輸入字段中輸入整數值後纔會觸發? (因此,任何數量的0-9)如何在輸入字段中輸入整數值後調用一個函數?

Col <input type="text" value='tiledata.col' ng-model="tiledata.col" class="input-col" id="aeS-Col" ng-click="vm.setInputCol()"> 
+1

請正確標記您的問題。如果你打算使用jQuery,你可以_filter_事件。 –

回答

0

好事件可以改變被解僱,但不依賴的值,但可以在onchange事件處理函數中檢查以檢查輸入的字符:

element.addEventListener("keydown", function(event) { 
    var character = keysight(event).char 
    //Check if this is a number (eg: using regex) 
    //Call function required. 
} 

在您的代碼中,將ng-click更改爲ng-click=vm.setInputCol(event),然後在該函數中執行上述檢查,如果不是true,則返回該方法。

0

由於您似乎正在使用角度,所以您也可以像這樣檢查。

$scope.vm.setInputCol = function(){ 

     if(typeof $scope.tiledata.col === typeof 1) 
     { 
     alert("Do your stuff"); 
     } 
     else 
     { 
     return; 
     }; 
    }; 
0

.onkeypress()將是執行此操作的首選方法。 onkeypress vs onkeydown

從理論上講,該keydown和KeyUp事件表示被按下或釋放按鍵,而按鍵事件代表所鍵入的字符。理論的實現在所有瀏覽器中都不相同。

所以例如(jQuery中):

$("#aeS-Col").onkeypress(function(key) 
{ 
    if(key.test(/[0-9]/)) 
     callSuperFunction(); 
} 
相關問題