检查文本框的值是数字还是字符串

5

可能是重复问题:
在JavaScript中有一种(内置的)方法可以检查字符串是否为有效数字吗?

我想使用javascript检查文本框中是否包含数字值或字符串,我使用了以下代码。

var query=getquerystring()
    if(isNaN(query))

        {
           alert("query is a string");
        }
        else{
           alert("query is numeric");

        }

其中getquerystring()是一个函数,形式如下:

function getquerystring() {
            var query=document.getElementById("queryString").value;

            return  query;
         }

但是当我在文本框中输入数字1234时,仍然得到查询结果是字符串。 请告诉我我的代码有什么问题,并给我一些解决方案。

相关:https://dev59.com/3nVD5IYBdhLWcg3wU56H - naveen
1个回答

8
更新: 回顾我的答案,我意识到其中的问题。你不能与NaN进行比较,必须使用isNaN函数:
var query=getquerystring();
if(isNaN(parseFloat(query))
{
   alert("query is a string");
}
else{
   alert("query is numeric");
}

或者,你也可以使用正则表达式模式匹配来查看字符串是否与其应该匹配。

1
如果mytestbox的值为1214或者为"ring",那么它也会显示"query is numeric"。 - Romi
Aleks G:我使用了parseInt函数。 - Romi

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接