许多时候我们在制作表单时需要限制文本框输入内容的类型,下面我们用正则表达式限制文本框只能输入数字、小数点、英文字母、汉字等各类代码。
1.文本框只能输入数字代码(小数点也不能输入)
<input onkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')">
2.只能输入数字,能输小数点.
<input onkeyup="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))execCommand('undo')">
<input name=txt1 onchange="if(/\D/.test(this.value)){alert('只能输入数字');this.value='';}">
3.数字和小数点方法二
<input type=text 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}">
可以封装成单独的函数
function keyPress(ob) {
if (!ob.value.match(/^[\+\-]?\d*?\.?\d*?$/)) ob.value = ob.t_value; else ob.t_value = ob.value; if (ob.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/)) ob.o_value = ob.value;
}
function keyUp(ob) {
if (!ob.value.match(/^[\+\-]?\d*?\.?\d*?$/)) ob.value = ob.t_value; else ob.t_value = ob.value; if (ob.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/)) ob.o_value = ob.value;
}
function onBlur(ob) {
if(!ob.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?|\.\d*?)?$/))ob.value=ob.o_value;else{if(ob.value.match(/^\.\d+$/))ob.value=0+ob.value;if(ob.value.match(/^\.$/))ob.value=0;ob.o_value=ob.value};
}
只需在调用,传入this对象即可!
4.只能输入字母和汉字
<input onkeyup="value=value.replace(/[\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[\d]/g,''))" maxlength=10 name="Numbers">
5.只能输入英文字母和数字,不能输入中文
<input onkeyup="value=value.replace(/[^\w\.\/]/ig,'')">
6.只能输入数字和英文
<input onKeyUp="value=value.replace(/[^\d|chun]/g,'')">
7.小数点后只能有最多两位(数字,中文都可输入),不能输入字母和运算符号:
<input onKeyPress="if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 || /\.\d\d$/.test(value))event.returnValue=false">
8.小数点后只能有最多两位(数字,字母,中文都可输入),可以输入运算符号:
<input onkeyup="this.value=this.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3')">
分享到:
相关推荐
### 正则表达式在JavaScript中的应用:限制文本框只能输入数字及小数点 在Web开发中,经常需要对用户输入的数据进行合法性验证。为了确保数据格式正确且符合预期,开发者通常会在前端使用JavaScript结合HTML来实现...
"JS 正则表达式限制文本框只能输入数字" JS 正则表达式是指在 JavaScript 中使用的正则表达式,它是一种强大的字符串匹配工具,广泛应用于字符串的校验、提取、替换等操作。本文将详细介绍 JS 正则表达式在限制...
本文将重点介绍如何利用正则表达式限制文本框只能输入数字、小数点、英文字母以及汉字,并给出具体的实现方式。 #### 三、具体应用场景与实现方法 ##### 1. 只允许输入数字(不包含小数点) ```html (/\D/g,'')" ...
### 正则表达式在JavaScript中的应用:限制文本框只能输入字母和汉字 在Web开发过程中,表单验证是一项常见的任务。确保用户输入的数据符合预期的格式有助于提高数据的准确性和安全性。本篇文章将深入探讨如何使用...
### 正则表达式在JavaScript中的应用:限制文本框输入 #### 一、概述 本文主要探讨了如何使用JavaScript中的正则表达式来限制文本框内的输入内容。具体来说,文章涉及了对数字、小数点、英文字母以及汉字等不同...
以下是一些关于正则表达式的实例,用于限制文本框只允许输入数字、小数点、英文字母和汉字: 1. 只允许输入数字(不包括小数点): `(/\D/g,'')">` 这段代码使用了正则表达式`/\D/g`,`\D`代表非数字字符,`g`是...
以下是一些关于正则表达式限制输入的示例,它们涉及到数字、小数点、英文字母和汉字: 1. 只允许输入数字(不包括小数点):`/\D/g` 这个正则表达式会匹配所有非数字字符,并使用 `replace()` 函数将其替换为空字符...
总结来说,限制文本框只能输入数字、小数点和减号的正则表达式是`^[-+]?[0-9]*\.?[0-9]+$`,它结合了字符集、量词和否定前瞻断言,确保了用户输入的合法性。这种技术在开发中广泛应用,能够提高数据质量,防止因用户...
限制文本框输入数字和小数点,支持负数 对于更复杂的数字格式控制,如支持正负号和小数点的数字,可以采用如下方法: ```html (!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))this.value=this.t_value;else this.t_...
本项目针对Qt的lineEdit组件,通过正则表达式实现了输入限制功能,使得lineEdit只能接受符合特定规则的用户输入。这在很多应用场景中非常实用,例如手机号码、邮箱地址等格式的验证。 首先,让我们深入理解正则...
### 正则表达式在JavaScript中的应用:限制文本框输入 #### 一、概述 本文档将详细介绍如何利用JavaScript中的正则表达式来限制HTML表单中的文本框只能输入特定类型的字符,例如数字、小数点和英文字母等。通过...
以下是一些JavaScript正则表达式示例,用于限制文本框(`<input>`)的输入,只允许用户输入数字、小数点、英文字母等特定字符。 1. **仅允许数字(不包括小数点)**: ```html (/\D/g, '')" onafterpaste="this....
此段代码通过`onkeyup`和`onafterpaste`事件监听器,利用正则表达式`\D`(非数字字符)来移除所有非数字字符,确保输入框中只能输入数字。这适用于创建如电话号码或年龄等纯数字字段。 ### 2. 验证数字输入并清空...
本文将深入探讨如何使用正则表达式来限制用户在HTML文本框中只能输入数字和字母。 首先,我们需要理解正则表达式的基本语法。在JavaScript中,我们使用构造函数`new RegExp()`或直接在字符串中使用正则表达式符号`/...
正则表达式在文本框输入限制中的应用是前端开发中一个重要的知识点,它能够帮助开发者对用户输入的数据进行有效的格式化和验证,确保数据的准确性和安全性。以下是从标题、描述以及部分代码示例中提炼出的关键知识点...
因此,要限制文本框只能输入数字,可以使用正则表达式`/[^0-9]/g`,其中`[^0-9]`表示匹配任何非数字的字符,`g`标志表示全局匹配,即会查找所有符合模式的字符。 然而,在某些浏览器(如早期版本的IE)中,可能会...
在这个文档中,我们将探讨如何使用正则表达式限制文本框(input框)只允许用户输入数字。 首先,有两类创建正则表达式的常见方法: 1. 字面量写法:使用斜杠 `/` 表示正则表达式的开始和结束,例如 `/^\d+$/` 用来...