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

Javascript
window.onload 加载完毕的问题及解决方案(下)
jQuery 版本的文本输入框检查器Input Check
jquery Firefox3.5中操作select的问题
jquery 1.3.2 IE8中的一点点的小问题解决方法
javascript div 遮罩层封锁整个页面
javascript 页面只自动刷新一次
Javascript 区别浏览器 代码
checkbox 复选框不能为空
Prototype 学习 Prototype对象
Prototype 学习 工具函数学习($方法)
Prototype 学习 工具函数学习($A方法)
Prototype 学习 工具函数学习($w,$F方法)
Prototype Object对象 学习
Prototype Function对象 学习
Prototype Date对象 学习
JavaScript 事件对象的实现
JavaScript 事件查询综合
JavaScript 继承详解(一)
JavaScript 继承详解(二)
JavaScript 继承详解(三)

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 222 ::
收藏到网摘: 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,'');
}