js表单验证大全.txt
### JS表单验证大全知识点详解 #### 一、字符串长度限制与判断 在网页表单设计中,常常需要对用户输入的数据进行长度限制或者判断,确保数据的有效性和规范性。 **1.1 字符串长度限制** - **应用场景**:如用户名、留言等。 - **实现方法**:可以通过JavaScript来实现字符串长度的实时监测与限制。 - 示例代码片段: ```javascript function test() { if (document.a.b.value.length > 50) { alert("超过50个字符"); document.a.b.focus(); return false; } } ``` **1.2 判断字符长度** - **目的**:确保用户输入的字符符合特定的要求。 - **实现方法**:同样利用JavaScript来判断字符长度。 - 示例代码片段: ```javascript if (document.a.b.value.length === 0) { alert("请输入至少一个字符"); return false; } ``` **1.3 限制输入** - **目的**:防止用户输入超出预期范围的内容。 - **实现方法**:使用`onkeyup`事件来监听用户的输入,并实时进行过滤。 - 示例代码片段: ```html <input onkeyup="value=value.replace(/[^u4E00-u9FA5]/g,'')"> ``` **1.4 限制不能输入** - **目的**:阻止用户输入某些特定字符。 - **实现方法**:通过`onkeyup`事件,结合正则表达式来移除非法字符。 - 示例代码片段: ```html <input onkeyup="value=value.replace(/[^a-zA-Z0-9_]/g,'')"> ``` **1.5 textarea长度限制** - **目的**:对多行文本输入框(textarea)进行字符数量的限制。 - **实现方法**:利用`onkeyup`事件监听输入,判断并给出提示。 - 示例代码片段: ```javascript function checkTextAreaLength() { var maxLength = 200; // 最大长度 var textArea = document.getElementById('myTextArea'); if (textArea.value.length > maxLength) { alert('您已超出最大字符限制!'); textArea.value = textArea.value.substring(0, maxLength); } } ``` #### 二、字符类型判断与限制 为了确保表单输入的准确性,还需要对用户输入的字符类型进行判断和限制。 **2.1 判断是否汉字** - **目的**:只允许用户输入汉字。 - **实现方法**:使用正则表达式匹配汉字范围。 - 示例代码片段: ```html <input onkeyup="value=value.replace(/[^u4E00-u9FA5]/g,'')"> ``` **2.2 只能输入汉字** - **目的**:强制用户只能输入汉字。 - **实现方法**:同上,使用正则表达式过滤非汉字字符。 - 示例代码片段: ```html <input onkeyup="value=value.replace(/[^u4E00-u9FA5]/g,'')"> ``` **2.3 判断是否输入英文** - **目的**:只允许用户输入英文字符。 - **实现方法**:利用正则表达式判断字符范围。 - 示例代码片段: ```javascript function onlyEng() { if (!(event.keyCode >= 65 && event.keyCode <= 90)) { event.returnValue = false; } } ``` **2.4 只能输入英文** - **目的**:确保用户输入的是英文字符。 - **实现方法**:通过`onkeyup`事件结合正则表达式实现。 - 示例代码片段: ```html <input onkeyup="value=value.replace(/[^a-zA-Z]/g,'')"> ``` **2.5 只能输入数字** - **目的**:只允许用户输入数字。 - **实现方法**:通过`onkeydown`事件监听键盘输入,并判断按键码。 - 示例代码片段: ```javascript function onlyNum() { if (!((event.keyCode >= 48 && event.keyCode <= 57) || (event.keyCode >= 96 && event.keyCode <= 105))) { event.returnValue = false; } } ``` **2.6 只能输入英文字符和数字** - **目的**:确保用户输入的是英文字符或数字。 - **实现方法**:使用`onkeyup`事件监听输入,结合正则表达式进行过滤。 - 示例代码片段: ```html <input onkeyup="value=value.replace(/[^a-zA-Z0-9]/g,'')"> ``` #### 三、其他常用表单验证 除了基本的长度和字符类型限制外,还需要对特定类型的输入进行验证。 **3.1 Email验证** - **目的**:确保用户输入的是有效的电子邮件地址。 - **实现方法**:利用正则表达式匹配电子邮件地址格式。 - 示例代码片段: ```javascript function isEmail(strEmail) { if (strEmail.search(/^w+((-w+)|(.w+))*@[A-Za-z0-9]+((.|-)[A-Za-z0-9]+)*.[A-Za-z0-9]+$/) != -1) { return true; } else { alert("邮箱格式错误!"); } } ``` **3.2 密码验证** - **目的**:确保用户输入的密码符合安全标准。 - **实现方法**:通过一系列条件判断密码的有效性。 - 示例代码片段: ```javascript function checkPassword() { var password = document.getElementById('password'); if (password.value.length < 8) { alert("密码长度至少为8位!"); return false; } // 更多复杂度判断... return true; } ``` **3.3 关键字过滤** - **目的**:防止用户输入敏感或不当内容。 - **实现方法**:使用`indexOf`方法检查字符串中是否包含特定关键字。 - 示例代码片段: ```javascript function test() { if ((a.b.value.indexOf("***") === 0) || (a.b.value.indexOf("****") === 0)) { alert("包含非法关键字!"); a.b.focus(); return false; } } ``` **3.4 比较两个表单项的值是否相同** - **目的**:用于验证两次输入的密码是否一致等场景。 - **实现方法**:使用JavaScript比较两个输入框的值。 - 示例代码片段: ```javascript function check() { with (document.all) { if (input1.value !== input2.value) { alert("两次输入的密码不一致!"); input1.value = ""; input2.value = ""; } else { document.forms[0].submit(); } } } ``` JavaScript提供了丰富的工具和方法来实现各种表单验证的需求。无论是简单的字符长度限制还是复杂的密码验证,开发者都可以根据实际需求选择合适的方法和技术来确保用户数据的安全和有效性。
2.:js判断汉字、判断是否汉字 、只能输入汉字
3:js判断是否输入英文、只能输入英文
4:js只能输入数字,判断数字、验证数字、检测数字、判断是否为数字、只能输入数字
5:只能输入英文字符和数字
6: js email验证 、js 判断email 、信箱/邮箱格式验证
7:js字符过滤,屏蔽关键字
8:js密码验证、判断密码
2.1: js 不为空、为空或不是对象 、判断为空 、判断不为空
2.2:比较两个表单项的值是否相同
2.3:表单只能为数字和"_",
2.4:表单项输入数值/长度限定
2.5:中文/英文/数字/邮件地址合法性判断
2.6:限定表单项不能输入的字符
2.7表单的自符控制
2.8:form文本域的通用校验函数
1. 长度限制
<script>
function test()
{
if(document.a.b.value.length>50)
{
alert("不能超过50个字符!");
document.a.b.focus();
return false;
}
}
</script>
<form name=a onsubmit="return test()">
<input type="submit" name="Submit" value="check">
</form>
2. 只能是汉字
<input onkeyup="value="/oblog/value.replace(/[^u4E00-u9FA5]/g,'')">
3." 只能是英文
<script language=javascript>
function onlyEng()
{
if(!(event.keyCode>=65&&event.keyCode<=90))
event.returnvalue=false;
}
</script>
<input onkeydown="onlyEng();">
4. 只能是数字
<script language=javascript>
function onlyNum()
{
if(!((event.keyCode>=48&&event.keyCode<=57)||(event.keyCode>=96&&event.keyCode<=105)))
//考虑小键盘上的数字键
event.returnvalue=false;
}
</script>
<input onkeydown="onlyNum();">
剩余16页未读,继续阅读
- yhp3523522013-10-09不错 看起来很实用
- woi_life2012-07-06很实用的资料,可以稍加修改就可以使用。
- jkz7132011-11-04比较全面。有几个项目组刚好正用到。谢谢!
- 粉丝: 0
- 资源: 9
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助