JS不允许输入框显示负数
发布时间
阅读量:
阅读量
通过网络搜索获取了大量相关代码,发现其功能表现大同小异,主要问题在于当用户输入负号时,系统会将所有内容清空,这种交互方式严重影响用户体验。一旦用户误操作输入错误,就需要重新输入全部内容,增加了使用负担。
经过查阅大量关于输入框事件处理的相关资料,并结合实际需求进行归纳总结,最终找到了一种最优解决方案,能够有效防止用户输入负数,欢迎各位提出宝贵意见和进行交流讨论。
代码:
<input type="number" onkeypress="return noNumbers(event)" />
function noNumbers(e){
var keycode = window.event ? e.keyCode : e.which;
//Internet Explorer/Chrome 浏览器使用 event.keyCode 取回被按下的字符,而 Netscape/Firefox/Opera 等浏览器使用 event.which。
var keychar = String.fromCharCode(keycode);//fromCharCode:将 Unicode 编码转为一个字符
if(keycode >= 48 &&
全部评论 (0)
还没有任何评论哟~
