js 限制文本框只能输入数字(包括小数点数字)

 
更多

做表单验证的时候是否会碰到验证某个输入框内只能填写数字呢,仅允许输入整数数字或者带小数点的数字。下面这段代码也许能帮到你!通过对当前输入框定义onkeypress,onkeyup,onblur事件对表单做了充分的验证,结果还是非常靠谱的。

<input type="text" value="" t_value="" o_value="" onkeypress="if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))this.value=this.t_value;else this.t_value=this.value;if(this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))this.o_value=this.value" onkeyup="if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))this.value=this.t_value;else this.t_value=this.value;if(this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))this.o_value=this.value" onblur="if(!this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?|\.\d*?)?$/))this.value=this.o_value;else{if(this.value.match(/^\.\d+$/))this.value=0+this.value;if(this.value.match(/^\.$/))this.value=0;this.o_value=this.value}" />

下面对onkeypress,onkeyup,onblur事件做简要的解释。

onkeypress 事件会在键盘按键被按下并释放一个键时发生。

onkeyup 事件会在键盘按键被松开时发生。

onblur 事件会在对象失去焦点时发生。

另外需要注意的是如果需要做严格验证的表单,一定要客户端和服务器端进行双重验证,以上紧紧做了客户端验证。如果稍微懂点程序的人,能够很轻松的绕过这段验证代码,如果服务器端没有进行验证的话,就很容易出问题的。

打赏

本文固定链接: https://www.cxy163.net/archives/4680 | 绝缘体

该日志由 绝缘体.. 于 2013年05月23日 发表在 未分类 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: js 限制文本框只能输入数字(包括小数点数字) | 绝缘体
关键字: , , , ,

js 限制文本框只能输入数字(包括小数点数字):等您坐沙发呢!

发表评论


快捷键:Ctrl+Enter