• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
.NET新手入门
Keep MOVEing.......永不止步!!!
博客园    首页    新随笔    联系   管理    订阅  订阅

通用化 web表单验证方式 的改进方案

验证时创建数组的函数,注意其与页面元素的对应关系。
<script LANGUAGE="JavaScript">
<!--
/**
* 取得需要验证的文本框控件数组
*/
function getCheckArray()
{
var arr=new Array();
arr[0]=createToBeCheckedObj("name","nameMsg","[\\u4E00-\\u9FA5]{2,3}","true");
arr[1]=createToBeCheckedObj("title","titleMsg","[\\u4E00-\\u9FA5]{2,5}","true");
arr[2]=createToBeCheckedObj("age","ageMsg","[2-5]{1}[0-9]{1}","false");
arr[3]=createToBeCheckedObj("pswd","pswdMsg","\\w+","true");
arr[4]=createToBeCheckedObj("email","emailMsg","\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\.\\w+([-.]\\w+)*","true");
return arr;
}
//-->
</script>
3。创建验证数据结构的函数
/**//**
* Check a object will be checked when sbmit a form
*/
function createToBeCheckedObj(textboxName,msgSpanId,validChar,isRequired){
// Create the object will be checked
var toBeCheckedObj=new Object;
// Set propertied to toBeCheckedObj
toBeCheckedObj.textboxName=textboxName;
toBeCheckedObj.msgSpanId=msgSpanId;
toBeCheckedObj.validChar=validChar;
toBeCheckedObj.isRequired=isRequired;
// create a method of toBeCheckedObj
toBeCheckedObj.showProperties=function(){
alert("TextboxName="+this.textboxName+" MsgSpanId="+this.msgSpanId+" ValidChar="+this.validChar+" IsRequired"+this.isRequired);
}
// return the object will be checked
return toBeCheckedObj;
}
4。验证函数
/**//**
* Check form
*/
function checkForm(toBeCheckedObjArray){
for(var i=0; i<toBeCheckedObjArray.length; i++){
var toBeCheckedObj=toBeCheckedObjArray[i];
// toBeCheckedObj.showProperties();
var checkResult=checkTextBox(toBeCheckedObj);
if(checkResult){
document.getElementById(toBeCheckedObj.msgSpanId).className="feedbackHide";
}
else{
document.getElementById(toBeCheckedObj.msgSpanId).className="feedbackShow";
document.getElementById(toBeCheckedObj.textboxName).focus();
return false;
}
}
// alert("all passed");
return true;
}
/**//**
* Check text field in the form
*/
function checkTextBox(toBeCheckedObj){
var validChar=toBeCheckedObj.validChar;
var isRequired=toBeCheckedObj.isRequired;
var inputValue=document.getElementById(toBeCheckedObj.textboxName).value;
if(isRequired!="true" && inputValue.length<1){
return true;
}
else{
var regexStr="^"+validChar+"$";
var regex=new RegExp(regexStr);
return regex.test(inputValue);
}
}
posted @ 2009-05-05 17:09  .NET新手入门  阅读(173)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3