首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >检查输入的数字是否为jquery中的数字

检查输入的数字是否为jquery中的数字
EN

Stack Overflow用户
提问于 2009-08-13 15:25:27
回答 9查看 165.5K关注 0票数 64

我有一个简单的textbox,用户在其中输入数字。

jQuery是否有一个isDigit函数,允许我在用户输入数字以外的内容时显示一个警告框?

该字段也可以有小数点。

EN

回答 9

Stack Overflow用户

回答已采纳

发布于 2009-08-13 15:26:44

我建议使用正则表达式:

代码语言:javascript
复制
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');
   ...
}

或者按照@Platinum的建议使用单个正则表达式:

代码语言:javascript
复制
var numberRegex = /^[+-]?\d+(\.\d+)?([eE][+-]?\d+)?$/;
var str = $('#myTextBox').val();
if(numberRegex.test(str)) {
   alert('I am a number');
   ...
}    
票数 87
EN

Stack Overflow用户

发布于 2009-08-13 15:34:29

忘记正则表达式吧。为此,JavaScript有一个内置函数:isNaN()

代码语言:javascript
复制
isNaN(123)           // false
isNaN(-1.23)         // false
isNaN(5-2)           // false
isNaN(0)             // false
isNaN("100")         // false
isNaN("Hello")       // true
isNaN("2005/12/12")  // true

就这么叫吧:

代码语言:javascript
复制
if (isNaN( $("#whatever").val() )) {
    // It isn't a number
} else {
    // It is a number
}
票数 75
EN

Stack Overflow用户

发布于 2013-10-24 18:45:55

有一种更简单的方法来检查变量是否为整数。您可以使用$.isNumeric()函数。例如:

代码语言:javascript
复制
$.isNumeric( 10 );     // true

这将返回true,但如果您将字符串放在10的位置,则将返回false。

我希望这对你有用。

票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1272696

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档