检查输入的值是否为有效整数

时间:2016-11-15 12:39:30

标签: javascript jquery

我想检查用户输入的值是否是使用jquery

的有效整数

我已尝试过此代码,但似乎总是返回 true

if ((manageridEntered === "") || ($.isNumeric(manageridEntered))) {
  success = false;
}

9 个答案:

答案 0 :(得分:3)

无需使用.query()

您可以使用jquery javascript

  

isNaN()也接受十进制数字

isNaN()

您可以在此处使用普通return !isNaN(manageridEntered)) javascript来匹配数字

regex

答案 1 :(得分:3)

您可以使用经典JavaScript:

var isNumber = Number.isInteger(yournumber);

或者,如果您想检查它是否不是{不使用!):

var isNaN = Number.isNaN(yournumber);



console.log(Number.isInteger(0.1));       // false
console.log(Number.isInteger(1));         // true
console.log(Number.isInteger(-100000));   // true
console.log(Number.isInteger(Math.PI));   // false
console.log(Number.isInteger(-Infinity)); // false
console.log(Number.isInteger(true));      // false
console.log(Number.isInteger(NaN));       // false
console.log(Number.isInteger(0));         // true
console.log(Number.isInteger("10"));      // false




答案 2 :(得分:1)

请试试这个:

if(Math.floor(manageridEntered) == manageridEntered && $.isNumeric(manageridEntered)){
     //code here
}

答案 3 :(得分:1)

使用正则表达式

var intRegex = /^\d+$/;
var floatRegex = /^((\d+(\.\d *)?)|((\d*\.)?\d+))$/;

var str = $('#myTextBox').val();
if(intRegex.test(str) || floatRegex.test(str)) {
   alert('I am a number');

}

取自checking if number entered is a digit in jquery

的示例

答案 4 :(得分:1)

您可以使用vanilla JavaScript:

success = !manageridEntered.length || parseInt(manageridEntered) == manageridEntered;

答案 5 :(得分:1)

isNumeric正在检查一个数字(也可以用字符串包装),而不是整数。除此之外,isNumeric()并非始终返回true,就像您可以使用 JQuery 2.1.1 在以下代码段中看到的那样。

console.log($.isNumeric('a'));    // false
console.log($.isNumeric('1'));    // true
console.log($.isNumeric(1));      // true
console.log($.isNumeric(1.5));    // true
console.log($.isNumeric('1.5'));  // true
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

答案 6 :(得分:1)

$('.submitBtn').click(function() {
  var Number = $('#Number').val();
if ((Number === "") || ($.isNumeric(Number))) {
  alert('Valid NUmber');
}else{
  alert('Not Valid NUmber');
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<form method="post" action="">
   Inateger Value: <input type="text" name="Number" id="Number" />
  <input type="submit" value="Submit" class="submitBtn">
</form>

答案 7 :(得分:0)

使用Regex可以实现它,见下面的代码

$(document).ready(function () {
            $("#button").on("click", function () {

                var patt = new RegExp("^[0-9]*$");
                if (patt.test($("#number").val())) {
                    alert("true")
                } else {
                    alert("false")
                }
            });

        });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input type="text" id="number" />
<input type="button" id="button"  value="Check"/>

答案 8 :(得分:0)

如果为整数,则返回true

if(manageridEntered == parseInt(manageridEntered))