2012-06-06 87 views
0

我正在嘗試創建一個文本域來輸入只接受數字的日期。如果有人輸入任何其他字符,則不需要在文本字段中顯示,並且光標需要保持在相同的位置(不需要移動到下一個字符位置)。如果輸入的值是數字,則需要在文本字段中顯示,並且需要將光標移動到下一個級別。 所以最後文本字段只包含數字。如何限制文本域只能輸入數字

我使用下面的代碼,

$("#date").keyup(function(event){ 

     //var c=(event).keyCode; 
     var c= String.fromCharCode(event.keyCode); 
     var cval = $(this).val(); 

     alert("Characters="+c); 
     if(isNumber(c)) 
      $(this).val(cval+c); 

     } 

高級謝謝,

VSoft

回答

1

在HTML5中,你可以使用輸入typenumber

你可以這樣做:

$('#date').keyup(function() { 
    this.value = this.value.replace(/[^0-9\.]/g,''); 
}); 

我想你需要jQuery Input Mask Plugin

+0

對不起INOUT類型=「號「不適合我。 – user1431849

+0

@ user1431849檢查我的答案中的鏈接,我認爲你需要這樣的東西。 – thecodeparadox

0

你應該運行你的函數只有當焦點在所要求的文本字段

+0

對不起,我沒有得到你..可以üPLZ解釋... – user1431849

+0

我的意思是當用戶在你的文本字段上輸入焦點時,你應該添加函數來檢查用戶輸入.... $('#yourInput')。focus (function(){ var userInput = $('#yourInput').val(); }); –