我想只得到正的值,有什么方法来防止它只使用html 请不要建议验证方法
当前回答
我对@Abhrabm的回答不满意,因为:
它只是阻止负数输入 向上/向下箭头,而用户可以输入负数从键盘。
解决方法是防止用键码:
//选择输入元素。 var number = document.getElementById('number'); //在numInput上监听输入事件 号码。Onkeydown =函数(e) { 如果(! ((e。> 95 && e.keyCode < 106) || (e.keyCode > 47 && e.keyCode < 58) || e.keyCode == 8)) { 返回错误; } } <form action="" method="post"> <input type="number" id="number" min="0" /> <input type="submit" value="点击我!"/> > < /形式
由@Hugh Guiney提供的澄清:
正在检查哪些关键代码:
95, < 106对应Numpad 0到9; 47, < 58对应数字行上的0到9;8是 退格键。
所以这个脚本是防止在输入中输入无效的键。
其他回答
像这样使用min属性:
<input type="number" min="0">
我对@Abhrabm的回答不满意,因为:
它只是阻止负数输入 向上/向下箭头,而用户可以输入负数从键盘。
解决方法是防止用键码:
//选择输入元素。 var number = document.getElementById('number'); //在numInput上监听输入事件 号码。Onkeydown =函数(e) { 如果(! ((e。> 95 && e.keyCode < 106) || (e.keyCode > 47 && e.keyCode < 58) || e.keyCode == 8)) { 返回错误; } } <form action="" method="post"> <input type="number" id="number" min="0" /> <input type="submit" value="点击我!"/> > < /形式
由@Hugh Guiney提供的澄清:
正在检查哪些关键代码:
95, < 106对应Numpad 0到9; 47, < 58对应数字行上的0到9;8是 退格键。
所以这个脚本是防止在输入中输入无效的键。
这里有一个解决方案,我工作最好的一个QTY字段,只允许数字。
// Only allow numbers, backspace and left/right direction on QTY input
if(!((e.keyCode > 95 && e.keyCode < 106) // numpad numbers
|| (e.keyCode > 47 && e.keyCode < 58) // numbers
|| [8, 9, 35, 36, 37, 39].indexOf(e.keyCode) >= 0 // backspace, tab, home, end, left arrow, right arrow
|| (e.keyCode == 65 && (e.ctrlKey === true || e.metaKey === true)) // Ctrl/Cmd + A
|| (e.keyCode == 67 && (e.ctrlKey === true || e.metaKey === true)) // Ctrl/Cmd + C
|| (e.keyCode == 88 && (e.ctrlKey === true || e.metaKey === true)) // Ctrl/Cmd + X
|| (e.keyCode == 86 && (e.ctrlKey === true || e.metaKey === true)) // Ctrl/Cmd + V
)) {
return false;
}
限制数字类型中的字符(-)和(e)
<input type="number" onkeydown="return event.keyCode !== 69 && event.keyCode !== 189" />
演示:https://stackblitz.com/edit/typescript-cwc9ge?file=index.ts
简单地使用min="0"
< v-text-field v模型=“abc” 类= " ml-1 rounded-0” 概述了 密集的 label = "数量" type = "数量" min = " 0 " > < / v-text-field >
推荐文章
- 在网页上用鼠标模拟震颤(例如帕金森病)?
- Bootstrap抛出Uncaught错误:Bootstrap的JavaScript需要jQuery
- 如何改变文本区域的边框颜色:焦点
- 我如何设置背景颜色为文本的宽度,而不是整个元素的宽度,使用CSS?
- 如何删除和清除所有的本地存储数据
- 强制打开“另存为…”弹出打开文本链接点击PDF在HTML
- 如何修改标签文本?
- 在HTML中还有其他有用的空格码吗,比如半空格的 , em-spaces, en-spaces等等?
- 输入触发器按钮单击
- Angular 2模板中的标签是什么意思?
- 如何设置身体高度溢出滚动
- 在输入type="number"时禁用webkit的旋转按钮?
- 如何在另一个元素之后添加一个元素?
- 我如何有效地解析HTML与Java?
- “ ”和“”有什么区别?