输入必须是数字格式只检查

时间:2013-02-07 23:08:16

标签: javascript jquery

我有一个简单的数学函数脚本。我希望用户只插入数字。我怎么能在代码中做到这一点?甚至更好 - 如何防止输入非数字字符?

 $('form').submit(
 function (e) {
   e.preventDefault();

    $('#result').text("Result is " + parseInt($('#var1').val()) / 2 + " days");
 });

http://jsfiddle.net/eWXUT/1/

2 个答案:

答案 0 :(得分:0)

您可以通过以下方式检查输入:

$('#var1').keypress(function(event) {
var code = (event.keyCode ? event.keyCode : event.which);
if (!(
        (code >= 48 && code <= 57) //numbers
        || (code == 46) //period
    )
    || (code == 46 && $(this).val().indexOf('.') != -1)
   )
    event.preventDefault();
});

或使用jquery:

$('#val1').change(function() {
  $(this).val($(this).val().match(/\d*\.?\d+/));
});

答案 1 :(得分:0)

尝试在按键/向上/向下键上删除非整数值 - 这是live example

$('#var1').on('keypress keydown keyup', function(){
       $(this).val($(this).val().replace(/([^\d]+)/, '')); 
    });