当前位置: 首页 > 图文教程 > 网络编程 > Javascript > js 表单验证方法(实用)

Javascript
JQuery Tips(3) 关于$()包装集内元素的改变
JavaScript 创建随机数和随机图片
javascript document.execCommand() 常用解析
firefox下对ajax的onreadystatechange的支持情况分析
Javascript attachEvent传递参数的办法
jQuery Attributes(属性)的使用(一、属性篇)
jquery自动完成插件(autocomplete)应用之PHP版
查询绑定数据岛的表格中的文本并修改显示方式的js代码
讨论javascript(一)工厂方式 js面象对象的定义方法
IE不支持option的display样式,只能使用remove和add
多浏览器兼容的获取元素和鼠标的位置的js代码
js checkbox全选并将获取值放到input里边
javascript 日期联动选择器 [其中的一些代码值得学习]
javascript实现的仿51job地址多项选择方式效果
jQuery 渐变下拉菜单
利用图片的 onerror 事件载入默认图片
js实现页面打印功能实例代码(附去页眉页脚功能代码)
JQuery读取XML文件数据并显示的实现代码
比较详细的关于javascript 解析json的代码
TextArea 控件的最大长度问题(js json)

Javascript 中的 js 表单验证方法(实用)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 447 ::
收藏到网摘: n/a

每次都要用到表单验证的时候,就在到处找东西,而网上的很多都不见的好用。自己终于累计了这些方法,在自己的程序中使用了的一些方法,肯定是好用的,主要使用了简单的正则表达式进行判断。如果有bug,欢迎提出来。 //下面验证的是长度
function checkTextLen(textId){
var len = 0;
var checkField=document.getElementById(textId);
var inputstring = checkField.value;
var string_length = inputstring.length;
if (string_length == 0)
{
return 0;
}
for (var i=0;i<string_length;i++)
{
if (inputstring.charAt(i).charCodeAt()>255) len+=2;
else len+=1;
}
return len;
}
function checkTextLength(textId,length,msg){
var textObj =document.getElementById(textId);
if(checkTextLen(textId)>length/1){
alert("["+msg+"]"+"长度最大为"+length+"位,"+"请重新输入!注意:一个汉字占2位");
textObj.focus();
return false;
}else {
return true;
}
}
//下面验证不含有非法的字符,中文,英文,数字都是合法的。
function isValidString(textId,errMsg){
szStr = document.getElementById(textId).value;
voidChar = "'\"><`~!@#$%^&\(\)()!¥……??“”‘'*";
for(i = 0 ; i < voidChar.length; i ++){
aChar = voidChar.substring(i, i + 1);
if(szStr.indexOf(aChar) > -1){
alert(errMsg);
return false;
}
}
return true;
}
//下面验证只可以输入字母,数字,下划线
function isEnglish(textId,errMsg)
{
s = document.getElementById(textId).value;
//下面的正则表达式限制的长度在6到20之间
//var patrn=/^(\w){6,20}$/;
var patrn =/^(\w)*$/;
if (!patrn.exec(s)){
alert(errMsg);
return false
}
return true
}
//下面验证只允许中文
function isChinese(textId,errMsg)
{
s = document.getElementById(textId).value;
var patrn =/[^\u4E00-\u9FA5]/g;
if (patrn.exec(s)){
alert(errMsg);
return false
}
return true
}
//下面验证只允许数字
function isNumber(textId,errMsg)
{
s = document.getElementById(textId).value;
//下面的正则表达式限制的长度在6到20之间
//var patrn=/^(\d){6,20}$/;
var patrn =/^(\d)*$/;
if (!patrn.exec(s)){
alert(errMsg);
return false
}
return true
}
使用js的正则表达式用来控制不允许在文本框里面输入非数字,也就是只允许输入数字。调用方法 : onkeyup="onlyNum(this);"
function onlyNum(obj)
{
temp = obj.value;
//注意下面的正则表达式的写法,没有用引号括起来。。
obj.value = temp.replace(/\D/g,'');
}