javascript – parseInt总是返回NaN?

前端之家收集整理的这篇文章主要介绍了javascript – parseInt总是返回NaN?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
长话短说,我试图验证手机领域.我已经添加
isNaN和parseInt用于检查字段中的“”但是表示

以下从未证实真实……我错过了什么?

if(isNaN(parseInt(phone))){
        error.text("Sorry but this phone field requires numbers only");
        return false;
    } else {
    return true;

    }

它总是失败……即使我在现场输入一个数字并提交,它也永远不会成立.
我总是得到错误mssg.

编辑:我正在测试表单中的输入值,phone是该字段的名称.

解决方法

将JS字符串强加给数字的各种方法及其后果:

Results of converting various strings using the above techniques http://phrogz.net/JS/string_to_number.png

我个人使用* 1因为它是短的类型,但仍然突出(不像一元),并且或者给我用户输入或完全失败的内容.当我知道最后会有非数字内容忽略时,或者当我需要解析非基数为10的字符串时,我只使用parseInt().

编辑:根据您的评论,如果使用phone.val()修复它

>您使用的是jQuery(您从未提及过,应该有),以及
>你实际上有一个jQuery对象,包装一个或多个DOM元素(可能只有一个).

每当你做var foo = $(‘…’);然后foo变量引用一个或多个元素的jQuery对象.您可以通过var fooEl = foo [0]从中获取第一个实际的DOM元素;或var fooEl = foo.get(0); …但即使这样你仍然有一个DOM元素而不是它的特定属性.

对于表单输入,您需要从DOM元素获取.value,这是jQuery .val()方法的作用.

原文链接:https://www.f2er.com/js/156164.html

猜你在找的JavaScript相关文章