如何检查html表单输入是否为整数

时间:2018-07-23 04:30:50

标签: javascript html

<form>

我需要验证HTML表单中的数量字段。但是,当我将任何数量的值(如数字,文本或其他内容)放入程序中时,程序始终在此代码的其他部分运行。它不适用于整数。

5 个答案:

答案 0 :(得分:1)

假设您有数量的文本框输入,则该文本框的value将始终是字符串。使用isNaN检查:

var y = document.getElementById("quantity").value;

if (!isNaN(y)) {
  console.log('is a number');
} else {
  document.getElementById("quantity").style.borderColor = "#e60000";
  document.getElementById("qty").innerHTML = "&nbsp;&nbsp;enter valid quantity.*";
  document.getElementById("quantity").focus();
}

isNaN返回给定的值是否为不是数字。因此,如果它进入if块,则说明该字符串是一个数字。然后,您可以使用parseInt函数将其转换为实整数。

答案 1 :(得分:1)

  1. 使用Number将给定值转换为数字
  2. 现在使用isNaN方法进行检查。

    const quantity = document.getElementById("quantity");
    const qty = document.getElementById("qty");
    let y = quantity.value;
    
    let numberY = Number(y);
    
    if(isNaN(numberY)) {
     console.log('This is not a number');
    } else {
      console.log('do it now. it is a number');
      quantity.style.borderColor = "#e60000";
      qty.innerHTML = "&nbsp;&nbsp;enter valid quantity.*";
      quantity.focus();
    }
    

答案 2 :(得分:1)

有多种方法可以达到相同目的。下面提到其中一些:

  1. 使用模式<input type="text" pattern="^[0-9]*$" />
  2. 使用数字字段<input type="number" min=0 max=100 step=1>
  3. 使用isNan验证输入是否为数字isNaN(y),并使用y.indexof(".")==-1验证整数是否为

答案 3 :(得分:0)

也许只是将其与数字进行比较

 if(y != "" && y - y == 0) {  }

答案 4 :(得分:0)

尝试这个,

e.err -> will give you the error code like 4xx
e.errstr -> will give you the error message like 'unable to find the specified database'