检查数值后如何清空INPUT?

时间:2014-04-07 09:51:26

标签: html input jscript

我想检查INPUT值是否为数字,如果不是,则应清除该字段。如果下面的脚本不是数字,则始终会发出警报,但从不清除输入。谁知道我做错了什么?

<script>
   function numeric(input)
   {
      if(isNaN(input))
      {
          alert("Is not a numeric value");
          input.value="";
      }
   }
</script>

<input type="number" value="" name="<?php echo $x; ?>" onblur="return numeric(value)"/>

2 个答案:

答案 0 :(得分:1)

使用此

$( "#numerictext" ).keyup(function() {

var numberRegex = /^[+-]?\d+(\.\d+)?([eE][+-]?\d+)?$/;
var str = $('#numerictext').val();

if(!numberRegex.test(str)) {
   alert("Is not a numeric value");
   $('#numerictext').val('')
}

});

    <input type="number" id="numerictext" value="" name="<?php echo $x; ?>"/>

答案 1 :(得分:1)

您将值传递给函数,然后尝试通过引用其值来清除输入。相反,尝试:

<script>
   function numeric(input)
   {
      if(isNaN(input.value))
      {
          alert("Is not a numeric value");
          input.value="";
      }
   }
</script>

<input type="number" value="" name="<?php echo $x; ?>" onblur="return numeric(this)"/>