我正在制作此计算器应用程序,并且一切正常,我几乎完成了,但是单击它时屏幕上的点按钮存在问题,它在控制台中给了我这个错误:
The specified value "." is not a valid number. The value must match to the following regular expression: -?(\d+|\d+\.\d+|\.\d+)([eE][-+]?\d+)?
这里是代码:
<input type="number" placeholder="Enter A Number...." step="0.01">
<td><button id="dot">.</button></td>
dot.addEventListener("click", function() {
input.value += this.textContent;
re1 = input.value;
})
我还添加了这段代码,以防止输入任何特殊字符:
input.onkeypress = function(e) {
var chr = String.fromCharCode(e.which);
if ("1234567890qwertyuioplkjhgfdsazxcvbnmQWERTYUIOPLKJHGFDSAZXCVBNM.".indexOf(chr) < 0)
return false;
};
但是如果我将其注释掉,也不会发生任何事情,所以我不知道问题出在哪里。
任何帮助将不胜感激,并预先感谢。
编辑:这是应用程序的codepen,因此您可以自己查看问题
将类型更改为text
,而不是number
<input type="text" placeholder="Enter A Number....">