2014-05-18 21 views
-2

當用戶按下一個鍵,我想刪除不在範圍0-9字符,但該代碼不工作:(jsfiddleJQuery的:限制輸入字符到0-9

$('input').on('keypress', function(event){ 
     var char = String.fromCharCode(event.which) 
     var txt = $(this).val() 
     if (!txt.match(/^[0-9]*$/)){ 
      var changeTo = txt.replace(char, '') 
      $(this).val(changeTo).change(); 
     } 
}); 

我做錯了什麼? 感謝

+1

我認爲使用JQuery驗證(ht tp://jqueryvalidation.org/)插件你可以做得更好...... –

+1

'keypress'事件在值更改前被觸發 - 這就是爲什麼'txt'不會包含新值 –

回答