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

29 浏览
0 Comments

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

可能重复:

在JavaScript中是否有一种(内置的)方法来检查字符串是否为有效数字?

我想使用JavaScript检查文本框中是否包含数值或字符串。

我使用了以下代码:

var query=getquerystring()
    if(isNaN(query))
        {
           alert("query是一个字符串");
        }
        else{
           alert("query是数值");
        }

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

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

但是,当我在文本框中输入数字1234时,仍然显示query是一个字符串。

请告诉我我的代码有什么问题,并给我一些建议。

0
0 Comments

问题:如何检查文本框的值是数字还是字符串?

出现的原因:原来的答案存在问题,无法使用NaN进行比较,需要使用isNaN函数。

解决方法:可以使用以下两种方法之一来解决问题:

1. 使用isNaN函数进行比较:

var query = getquerystring();
if(isNaN(parseFloat(query))) {
   alert("query is a string");
} else {
   alert("query is numeric");
}

2. 或者,可以使用正则表达式模式匹配来判断字符串是否与预期匹配:

var mytestbox = "1214";
if (mytestbox.match(/^[0-9]+$/)) {
   alert("query is numeric");
} else {
   alert("query is a string");
}

作者Aleks G表示他使用了parseInt函数,但未提供相关代码。

0