这是我的HTML:
<input type="number" min="0" oninput="validity.valid||(value='');" step="0.1"/>
但是,我仍然可以输入类似的内容:
<00> 0000或000111或00223等
在我的输入字段中。我怎样才能将它限制为只有一个0?
有没有办法只在HTML中执行此操作?
感谢。
答案 0 :(得分:1)
检查输入是否以零开始,并覆盖仅有0的下一个数字。
function checkZero(){
var val = document.getElementById("num").value;
if(val.startsWith("0")){
document.getElementById("num").value = "0";
}
}
&#13;
<input id="num" type="number" min="0" oninput="checkZero()" step="0.1"/>
&#13;
答案 1 :(得分:1)
我会选择这样的事情:
while (s.charAt(0) == '0') {
if (s.length == 1) { break };
if (s.charAt(1) == '.') { break };
s = s.substr(1, s.length-1)
}
它接受0.1之类的数字并处理00.1或001。