长话短说,我试图验证手机领域.我已经添加
isNaN和parseInt用于检查字段中的“”但是表示
isNaN和parseInt用于检查字段中的“”但是表示
以下从未证实真实……我错过了什么?
if(isNaN(parseInt(phone))){ error.text("Sorry but this phone field requires numbers only"); return false; } else { return true; }
它总是失败……即使我在现场输入一个数字并提交,它也永远不会成立.
我总是得到错误mssg.
编辑:我正在测试表单中的输入值,phone是该字段的名称.
解决方法
将JS字符串强加给数字的各种方法及其后果:
我个人使用* 1因为它是短的类型,但仍然突出(不像一元),并且或者给我用户输入或完全失败的内容.当我知道最后会有非数字内容忽略时,或者当我需要解析非基数为10的字符串时,我只使用parseInt().
编辑:根据您的评论,如果使用phone.val()修复它
>您使用的是jQuery(您从未提及过,应该有),以及
>你实际上有一个jQuery对象,包装一个或多个DOM元素(可能只有一个).
每当你做var foo = $(‘…’);然后foo变量引用一个或多个元素的jQuery对象.您可以通过var fooEl = foo [0]从中获取第一个实际的DOM元素;或var fooEl = foo.get(0); …但即使这样你仍然有一个DOM元素而不是它的特定属性.