2017-06-05 62 views
-3

我有一個文本輸入,用戶可以寫地址,我想在文本輸入中鍵入一個數字時觸發一個javascript函數,我該如何實現它?數字輸入觸發功能

編輯:我需要的是知道什麼時候一個已被鍵入,的onkeyup通過jQuery的工作原理就像一個魅力,這就是我所做的:

$("#q").keyup((e) => { 

     var value = $("#q").val(); 

     var regex = new RegExp("[a-zA-Z0-9_ ]\\d+"); 

     var succeded = regex.test(value); 

     ... 
+0

到目前爲止你做了什麼? –

+0

添加代碼片段 –

+0

_「我怎樣才能實現它」_通過做一些研究,嘗試一些事情,弄錯它,尋找解決方案(不在SO上)。 StackOverflow應該是您尋求解決方案的_last地點。 – evolutionxbox

回答

1

你只需要使用建立的KeyEvents一樣(的keyDown,使用keyUp,按鍵等)。 你可以找到很多關於它的信息。 KeyboardEvent mozilla

  1. 創建HTML的輸入,並提供獨特的ID。
  2. 表單JS代碼採用這個元素。
  3. 然後只需將事件處理程序綁定到目標元素即可。 (「your_elment」]。addEventListener(「keypress」,function(e){0。0});},false);

0
$('.js-input').on('keydown', function(e) { 
    console.log('pressing:', e.keyCode); 
}); 

<input type="text" class="js-input"> 

DEMO

這將讓你開始吧

0

這會做你的工作:

$('#tbInput').keypress(function(event){ 

if(event.which != 8 && isNaN(String.fromCharCode(event.which))){ 
} 
else 
{ 
//Your function that you want to trigger. 
alert("You pressed a numberic key: " + event.which); 
}}); 

你可以在這裏進行測試: JSFIDDLE DEMO

1

你可以簡單地做:

$("input").keyup(function(){ 
    $("input").css("background-color", "pink"); 
}); 

Source