如何解决javascript parseFloat无法确定输入是否为float
|| 我是javascript,php和编程的新手,请耐心等待。 我正在尝试创建javascript函数来检查用户是否输入了浮点值。该事件被按键,因此它将检查每个字符。 发生的情况是,如果第一个字符是浮点数,则即使后面的字符已经是非数字的,也要说出其余输入的浮点数。同样,如果第一个字符是非数字字符,即使有一些非数字字符,它也会说不是浮点数。在我看来,它仅检查第一个字符。请帮助...index.php
<script type=\"text/javascript\" src=\"javascript.js\"> </script>
<form action=\"index.php\" method=\"get\">
Integer 1: <input type=\"text\" id=\"num1\" name=\"num1\" onkeypress=\"checkInput(this);\" /> <br />
Integer 2: <input type=\"text\" id=\"num2\" name=\"num2\" onkeypress=\"checkInput(this);\" /> <br />
<input type=\"submit\" value=\"Compute\" />
</form>
javascript.js
function checkInput(obj) {
if(!parseFloat(obj.value)) {
alert(\"Not Float\");
} else {
alert(\"Float\");
}
}
解决方法
parseFloat
是从字符串的第一个字符开始提取数字。
要检查字符串的整体是否表示一个数字,请将其转换为Number
,并检查结果是否为NaN
(不是数字):
if (isNaN(Number(obj.value)) {
alert(\"Not Float\");
} else {
alert(\"Float\");
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。