我知道这个主题在SO中非常活跃,但现在我似乎发现input
字段带有type="number"
和十进制数的字符很奇怪。我的代码是这样的:
function Sum(){
var f = document.myform;
var num1 = f.num1.value;
if (isNumber(num1)){
alert(parseFloat(num1));
}
}
function isNumber(n) {
return (!isNaN(parseFloat(n)) && isFinite(n) && n >= 0);
}
#num1 {
display:none;
}
<form name="myform" enctype="application/x-www-form-urlencoded" action="javascript:void(0);">
<input id="num1" type="number" value="1.5">
<input id="run_button" class="button" type="submit" onclick="Sum()"/>
</form>
每次我在数字字段中输入十进制数字时,都会出现此错误,但如果数字没有点,则不会出现错误。您可以在test form中进行测试。
答案 0 :(得分:1)
这解决了我的问题
<input type='number' min='0' step='Any'/>