`

js客户端验证

阅读更多

贴一段代码:(为了我以后用的时候好找)随便给起个名字11.js

 

/**
 *
 * 格式化金额为 0.00
 *
 */
function formatMoney(v){
 var s = '';
 s = v+'';
 var rv;
 if(s.length > 0 && v > 0){
  var sa = s.split('.'); 
  if(sa.length <= 1)
   rv = s+'.00';
  else{
   
   if(sa[1].length == 1)
    rv = s+'0';
   else if(sa[1].length >= 2)
    rv = s;
  }
 }
 else
  rv = '0.00';

 return rv;
}

function exitFormat(sender){
 sender.value = formatMoney(sender.value);
}


/**
*
* 去除多余空格函数
* trim:去除两边空格 lTrim:去除左空格 rTrim: 去除右空格
* 用法:
*     var str = "  hello ";
*     str = str.trim();
*/
String.prototype.trim = function()
{
    return this.replace(/(^[\\s]*)|([\\s]*$)/g, "");
}

/**
 * 按相应的格式转换日期,如:dateSome.format("yyyy-MM-dd");
 */
Date.prototype.format = function(format){
 var o = {
  "M+" : this.getMonth()+1, //month
  "d+" : this.getDate(),    //day
  "h+" : this.getHours(),   //hour
  "m+" : this.getMinutes(), //minute
  "s+" : this.getSeconds(), //second
  "q+" : Math.floor((this.getMonth()+3)/3),  //quarter
  "S" : this.getMilliseconds() //millisecond
 }
 if(/(y+)/.test(format)) format=format.replace(RegExp.$1,(this.getFullYear()+"").substr(4 - RegExp.$1.length));
 for(var k in o){
  if(new RegExp("("+ k +")").test(format)){
   format = format.replace(RegExp.$1,RegExp.$1.length==1 ? o[k] :("00"+ o[k]).substr((""+ o[k]).length));
  }
 }
 return format;
}

/* 判断某个对象是否定义,即判断是否正确地取得了某个控件。 */
function isNullOrUndefined(argControl){
 return ((typeof(argControl)=="undefined")||(argControl==null));
}

/*
 * 判断是否为空白的字符串,其中包括中文字符的全角空白
 */
function isBlankStr(argStr){
 if(isNullOrUndefined(argStr)){
  return true;
 }
 else{
  var blankReg=/^[\s ]*$/;
  return blankReg.test(argStr);
 }
}

/**
 * 字符串转成日期类型
 * 格式 MM/dd/YYYY YYYY/MM/dd YYYY-MM-dd
 */
function parseStrToDate(DateStr){
 var converted = Date.parse(DateStr);
 var myDate = new Date(converted);
 if (isNaN(myDate)){
  //var delimChar = DateStr.indexOf('/')!=-1?'/':'-';
  var arys= DateStr.split('-');
  myDate = new Date(arys[0],--arys[1],arys[2]);
 }
 return myDate;
}

//计算天数差的函数,通用 
function  DateDiff(sDate1,  sDate2){    //sDate1和sDate2是2006-12-18格式 
    var  aDate,  oDate1,  oDate2,  iDays 
    aDate  =  sDate1.split("-") 
    oDate1  =  new  Date(aDate[1]  +  '-'  +  aDate[2]  +  '-'  +  aDate[0])    //转换为12-18-2006格式 
    aDate  =  sDate2.split("-") 
    oDate2  =  new  Date(aDate[1]  +  '-'  +  aDate[2]  +  '-'  +  aDate[0]) 
    iDays  =  parseInt(Math.abs(oDate1  -  oDate2)  /  1000  /  60  /  60  /24)    //把相差的毫秒数转换为天数 
    return  iDays 
}

function checkEmail(strEmail){
    var myReg = /^[_a-z0-9\.]+@([_a-z0-9]+\.)+[a-z0-9]{2,3}$/;
 return myReg.test(strEmail);
}

function checkPassword(s){
 var patn = /.{6,15}/;
 return patn.test(s);
}

function checkMobile(s){
 var patrn=/^13\d{9}$/;
 return patrn.test(s);
}

function checkTel(s){
  var patrn=/^(\(\d{3,4}\)|\d{3,4}-)?\d{7,8}$/;
 return patrn.test(s);
}
  
function checkPostalCode(s){
 var patrn=/^[1-9]\d{5}$/;
 return patrn.test(s);

 
function checkNumber(s){
 var patrn=/^[-\+]?\d+$/;
 return patrn.test(s);
}
 
function checkURL(s){
    var patrn=/^[a-zA-z]+:\/\/[^\s]*$/;
 return patrn.test(s);
}
function ifShorterThan(sArg,iLength){
 return sArg.length < iLength;
}


function $(strObjId){
 return document.getElementById(strObjId);
}

function isDate(s){
 var patrn=/^(19|20)\d{2}-(0?\d|1[012])-(0?\d|[12]\d|3[01])$/;
 return patrn.test(s);

}

function isDigital(s){
 var patrn=/^(-|\+)?\d+(\.\d+)?$/;
 return patrn.test(s);
}

/*
用途:检查输入字符串是否符合金额格式
格式定义为带小数的正数,小数点后最多三位
输入:
s:字符串
返回:
如果通过验证返回true,否则返回false

*/
function isMoney( s ){
 var regu = "^[0-9]+[\.][0-9]{0,3}$";
 var re = new RegExp(regu);
 return re.test(s);
}
/**
 * 通过iframe的Id取得该iframe的窗口对象
 */
function getIframeWindow(strFrameId){
 var objIframeWindow=null;
 if(document.all){
  objIframeWindow=document.frames(strFrameId);
 }
 else{
  objIframeWindow=$(strFrameId).contentWindow;
 }
 return objIframeWindow;
}

/**
 * 选择日期的函数,显示一个可自定义的日历小窗口。
 */
function chooseDay(objClicked,strIframeId,strInputId){
 document.onclick=function(){hideCalendar(strIframeId)};
 var objIframeCalendar=$(strIframeId);
 var objInput=$(strInputId);
// objIframeCalendar.style.left=objClicked.offsetLeft+"px";
// objIframeCalendar.style.top=(objClicked.offsetTop+objClicked.offsetHeight)+"px";
 var calendarPos = getPosition(objClicked);
 objIframeCalendar.style.left=calendarPos.x+"px";
 objIframeCalendar.style.top=(calendarPos.y+objClicked.offsetHeight)+"px";
 objIframeCalendar.style.display="block";
 var dateTheday=(isBlankStr(objInput.value)||isNaN(Date.parse(objInput.value)))?new Date():new Date(objInput.value);
 getIframeWindow(strIframeId).initCalendar(dateTheday.getFullYear(),dateTheday.getMonth(),strInputId,strIframeId);
}

/**
 * 隐藏日历小窗口的方法。
 */
function hideCalendar(strIframeId){
 $(strIframeId).style.display="none";
}

/**
 * 检查是否合理的日期。(供继承后进行自定义规则)
 * @param dateArg 传入的日期,即日历上的每一天。
 * @param strInputId 针对的表单某域,以区分不同的域,可能有不同的规则。
 * @see 例如:此段表示如果大于今天,则日历上的这些日期将失效,无法点击,仅允许点今天以前的日子。
 * if(strInputId=="inputSomeDay"&&dateArg>new Date()){
 *   return false;
 * }
 */
function validateDay(dateArg,strInputId){
 return true;
}

/**
 * 添加验证方法
 * @param objEmailInput 表单中需要验证的文本框对象
 * @param strMessageContainerId 显示提示的Div容器Id ,如果为空,则认为是以alert方式提示。
 * @param strMessage 验证不通过时显示的信息。
 * @see: 详细用法可以查看:/goldenfleece/console/test/test_form.html
 */
function addFieldCheck(strFieldId,strMessageContainerId,strErrorMessage,strSuccessMessage,strValideType){
 var objFieldChecked=$(strFieldId);
 var blnValide=false;
 if(!isBlankStr(strMessageContainerId)){
  var objMessageContainer=$(strMessageContainerId);
  var strOriginalClass=objMessageContainer.className;
  var strOriginalMessage=objMessageContainer.innerHTML;
  objFieldChecked.onfocus=function(){
   objMessageContainer.innerHTML=strOriginalMessage;
   objMessageContainer.className=strOriginalClass;
   blnValide=valideField(strFieldId, strValideType);
   doFocusOthers(blnValide, strFieldId, strMessageContainerId);
  }
 }
 objFieldChecked.onblur=function(){
  blnValide=valideField(strFieldId, strValideType);
  showValideMessage(blnValide, strMessageContainerId, strErrorMessage, strSuccessMessage);
  doBlueOthers(blnValide, strFieldId, strMessageContainerId);
 }
}

/**
 * 验证之外还想执行的方法,此处设定一个空的方法,在具体页面上需要时继承。
 */
function doFocusOthers(blnValide, strFieldId, strMessageContainerId){
 
}

function doBlueOthers(blnValide, strFieldId, strMessageContainerId){
 
}

/**
 * 将所有验证写在此方法里
 * @param strField 表单需要验证的域ID
 * @param strValideType 要验证的类别
 * @return 返回是否通过某验证
 */
function valideField(strField,strValideType){
 var objFieldChecked=$(strField);
 var returnValue = false;
 switch(strValideType){
  case "notempty" :
   returnValue=!isBlankStr(objFieldChecked.value);
   break;
  case "email" :
   returnValue=checkEmail(objFieldChecked.value);
   break;
  case "password" :
      returnValue=checkPassword(objFieldChecked.value);
   break;
  case "mobile" :
      returnValue=checkMobile(objFieldChecked.value);
   break;
  case "tel" :
      returnValue=checkTel(objFieldChecked.value);
   break;
  case "number" :
   returnValue=checkNumber(objFieldChecked.value);
   break;
  case "money" :
   returnValue=isMoney(objFieldChecked.value);
   break;
  case "shorter255" :
   returnValue=ifShorterThan(objFieldChecked.value,255);
   break;
  case "customCheck" :
   //此处示意对某个域的有效性验证可以通过几个基础方法来叠加。
   returnValue=(checkEmail(objField.value)&&checkNumber(objField.value))||checkLength(objField.value,10);
   break;
  case "date" :
      returnValue=isDate(objFieldChecked.value);
      break;
  case "digital" :
   returnValue=isDigital(objFieldChecked.value);
   break;   
  default :
   break;
 }
 return returnValue;
}

/* 封装的验证Alert方法 */
function valideFieldAlert(strField,strValideType,strErrorMessage){
 var blnValided=valideField(strField,strValideType);
 if(!blnValided){
  alert(strErrorMessage);
  $(strField).focus();
 }
 return blnValided;
}

function showValideMessage(argBlnValide, strMessage, strError, strSuccess){
 var argBlnAlert=false;   // 是否传入了提示错误的容器ID,如果没有,则以alert方式提示。
 var strERRORCLASSNAME="divErrorMessage";
 if(isBlankStr(strMessage)){
  argBlnAlert = true;
 }
 else{
  var objMessageContainer=$(strMessage);
  var strOriginalClass=objMessageContainer.className;
 }
 if(argBlnAlert){
  if(argBlnValide){
   // 检验正确,不做任何事
  }
  else{
   alert(strError);
  }
 }
 else{
  if(argBlnValide){
   objMessageContainer.innerHTML=strSuccess;
   objMessageContainer.className=strOriginalClass;
  }
  else{
   objMessageContainer.innerHTML=strError;
   objMessageContainer.className=strERRORCLASSNAME;
  }
 }
}


/* 重新改变IFrame的大小 */
function resizeIframe(thisIframe){
 if(window.XMLHttpRequest){
  //Mozilla 浏览器
  thisIframe.style.height=thisIframe.contentDocument.documentElement.scrollHeight+'px';
 }
 else{
  // IE浏览器
  thisIframe.height=document.frames(thisIframe.name).document.body.scrollHeight+'px';
 }
}

/* 取得某ID对象的样式对象 */
function getStyle(d){var t=$(d);if (t){return t.style;}else{return null;}}

/* 取得d对象的样式中的a属性对象 */
function getStyleItem(d,a){
    if (d.currentStyle){
      var curVal=d.currentStyle[a];
    }
    else{
      var curVal=document.defaultView.getComputedStyle(d, null)[a];
    }
    return curVal;
}

/* 加载XML的通用方法 */
function createXMLDom(){
 if (window.ActiveXObject)
  var xmldoc=new ActiveXObject("Microsoft.XMLDOM");
 else
  if (document.implementation&&document.implementation.createDocument)
   var xmldoc=document.implementation.createDocument("","doc",null);
 xmldoc.async = false;
 //为了和FireFox一至,这里不能改为False;
 xmldoc.preserveWhiteSpace=true;
 return xmldoc;
}

function createXMLHttp(){
 var xmlHttp;
 if (window.ActiveXObject){
  xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
 }else{
  xmlHttp=new XMLHttpRequest();
 }
 return xmlHttp;
}


function loadXmlFile(sXmlFile){
 var xmlDom=createXMLDom();
 try{
  xmlDom.load(sXmlFile);
 }catch(e){
  var xmlHttp=createXMLHttp();
  xmlHttp.onreadystatechange = function(){
   if(xmlHttp.readyState == 4){
    xmlDom=xmlHttp.responseXML;
   }else{
    //window.state="XML文件加载中...";
   }
  }  
  xmlHttp.open("GET",sXmlFile,false);
  xmlHttp.send(null);
 }
 return xmlDom;
}


/* 取得对象绝对位置的方法 */
function getPosition(e){     
    var left = 0;
    var top  = 0;
    while (e.offsetParent){
        left += e.offsetLeft;
        top  += e.offsetTop;
        e     = e.offsetParent;
    }

    left += e.offsetLeft;
    top  += e.offsetTop;

    return {x:left, y:top};

}

/* 取得鼠标位置的方法 */
function mouseCoords(ev){      
    if(ev.pageX || ev.pageY){
        return {x:ev.pageX, y:ev.pageY};
    }
    return {
        x:ev.clientX + document.body.scrollLeft - document.body.clientLeft,
        y:ev.clientY + document.body.scrollTop  - document.body.clientTop
    };
}

/* 取得鼠标相对被点击对象的位置的方法 */
function getMouseOffset(target, ev){
    ev = ev || window.event;

    var elementPos    = getPosition(target);
    var mousePos  = mouseCoords(ev);
    return {x:mousePos.x - elementPos.x, y:mousePos.y - elementPos.y};
}

/* 取得浏览器类型的方法 */
function getBrowserType()
{
 var browser = '';
 var agentInfo = navigator.userAgent.toLowerCase();
 if (agentInfo.indexOf("msie") > -1) {
  var re = new RegExp("msie\\s?([\\d\\.]+)","ig");
  var arr = re.exec(agentInfo);
  if (parseInt(RegExp.$1) >= 5.5) {
   browser = 'IE';
  }
 } else if (agentInfo.indexOf("firefox") > -1) {
  browser = 'FF';
 } else if (agentInfo.indexOf("netscape") > -1) {
  var temp1 = agentInfo.split(' ');
  var temp2 = temp1[temp1.length-1].split('/');
  if (parseInt(temp2[1]) >= 7) {
   browser = 'NS';
  }
 } else if (agentInfo.indexOf("gecko") > -1) {
  browser = 'ML';
 } else if (agentInfo.indexOf("opera") > -1) {
  var temp1 = agentInfo.split(' ');
  var temp2 = temp1[0].split('/');
  if (parseInt(temp2[1]) >= 9) {
   browser = 'OPERA';
  }
 }
 return browser;
}

/* 取得文件后缀名的方法 */
function getFileExt(fileName)
{
 var temp = fileName.split(".");
 var len = temp.length;
 var fileExt = temp[len-1].toLowerCase();
 return fileExt;
}

/**
 * 取得文件名的方法
 * @param file 各种各样完整的文件名
 * @param separator 分隔符,如“\\”或“/”
 */
function getFileName(file, separator)
{
 var temp = file.split(separator);
 var len = temp.length;
 var fileName = temp[len-1];
 return fileName;
}

/**
 * marquee移动显示内容的方法
 * @param strOverAll 总容器ID
 * @param strOriginal 原始对象ID
 * @param strClone 复制的对象ID
 * @param intSpeed 移动的速度
 * @param intDirection 移动的方向 1 为上,2 为右,3 为下, 4 为左。
 * @param intPixs 移动的像素数
 */
function marqueeElement(strOverAll,strOriginal,strClone,intDirection,intPixs){
 var objOverAll=$(strOverAll);
 var objOriginal=$(strOriginal);
 var objClone=$(strClone);
 objClone.innerHTML=objOriginal.innerHTML;
 switch(intDirection){
  case 1:
   if(objOverAll.scrollTop < objOriginal.offsetHeight){
    objOverAll.scrollTop=objOverAll.scrollTop+intPixs;
   }
   else{
    objOverAll.scrollTop=0;
   }
   break;
  case 2:
   if(objOverAll.scrollLeft>0){
    objOverAll.scrollLeft=objOverAll.scrollLeft-intPixs;
   }
   else{
    objOverAll.scrollLeft=objOriginal.offsetWidth;
   }
   break;
  case 3:
   if(objOverAll.scrollTop>0){
    objOverAll.scrollTop=objOverAll.scrollTop-intPixs;
   }
   else{
    objOverAll.scrollTop=objOriginal.offsetHeight;
   }
   break;
  case 4:
   if(objOverAll.scrollLeft < objOriginal.offsetWidth){
    objOverAll.scrollLeft=objOverAll.scrollLeft+intPixs;
   }
   else{
    objOverAll.scrollLeft=0;
   }
   break;
  default:
   break;
 }
}

/**
 * @marquee移动显示内容的方法
 * @param strOverAll 总容器ID
 * @param strOriginal 原始对象ID
 * @param strClone 复制的对象ID
 * @param objInterval 事件对象变量
 * @param intDirection 移动的方向 1 为上,2 为右,3 为下, 4 为左。
 * @param intSpeed 移动的速度
 * @param intPixs 移动的像素数
 * 注:总容器需要定义OVERFLOW: hidden; WIDTH: 502px;(左右跑) height: 100px;(上下跑)
 *     总容器的宽/高度必须小于内容的宽/高,内容中必须有一个复制的容器与原内容在同一个表格中,左右跑则两个内容在一行,
 *     上下跑则两个内容在一列。
 */
function intervalMarquee(strOverAll,strOriginal,strClone,objInterval,intDirection,intSpeed,intPixs){
 objInterval=setInterval('marqueeElement("'+strOverAll+'","'+strOriginal+'","'+strClone+'",'+intDirection+','+intPixs+')',intSpeed);
 var objOverAll=$(strOverAll);
 objOverAll.onmouseover=function(){
  clearInterval(objInterval);
 }
 objOverAll.onmouseout=function(){
  objInterval=setInterval('marqueeElement("'+strOverAll+'","'+strOriginal+'","'+strClone+'",'+intDirection+','+intPixs+')',intSpeed);
 }
}


/**
 *
 * Cookie操作方法
 */
function getCookie (name) {
 var CookieFound = false;
 var start = 0;
 var end = 0;
 var CookieString = document.cookie;
 // alert(CookieString);
 var i = 0;
 
 while (i <= CookieString.length) {
  start = i ;
  end = start + name.length;
  if (CookieString.substring(start, end) == name){
   CookieFound = true;
   break;
  }
  i++;
 }
 
 if (CookieFound){
  start = end + 1;
  end = CookieString.indexOf(";",start);
  if (end < start)
   end = CookieString.length;
  return unescape(CookieString.substring(start, end));
 }
 return "";
}

function deleteCookie(name){
 var expires = new Date();
 expires.setTime (expires.getTime() - 1);
 setCookie( name , "", expires,null,null,false);
}


function setCookie(name, value){
 var expdate = new Date();
 var argv = setCookie.arguments;
 var argc = setCookie.arguments.length;
 var expires = (argc > 2) ? argv[2] : null;
 var path = (argc > 3) ? argv[3] : null;
 var domain = (argc > 4) ? argv[4] : null;
 var secure = (argc > 5) ? argv[5] : false;
 if(expires!=null) expdate.setTime(expdate.getTime() + ( expires * 1000 ));
 document.cookie = name + "=" + escape (value) +((expires == null) ? "" : ("; expires="+ expdate.toGMTString()))
 +((path == null) ? "" : ("; path=" + path)) +((domain == null) ? "" : ("; domain=" + domain))
 +((secure == true) ? "; secure" : "");
}

 

/** ===================================全局执行的脚本部分======================**/

/* 取得浏览器的类型,如:"IE" */
var sBrowserType=getBrowserType();

/* 此部分为非IE的浏览器加上loadXML、selectNodes、selectSingleNode 方法 */
if(!document.all){
    XMLDocument.prototype.loadXML = function(xmlString)
    {
        var childNodes = this.childNodes;
        for (var i = childNodes.length - 1; i >= 0; i--)
            this.removeChild(childNodes[i]);

        var dp = new DOMParser();
        var newDOM = dp.parseFromString(xmlString, "text/xml");
        var newElt = this.importNode(newDOM.documentElement, true);
        this.appendChild(newElt);
    };

    // check for XPath implementation
    if( document.implementation.hasFeature("XPath", "3.0") )
    {
       // prototying the XMLDocument
       XMLDocument.prototype.selectNodes = function(cXPathString, xNode)
       {
          if( !xNode ) { xNode = this; }
          var oNSResolver = this.createNSResolver(this.documentElement)
          var aItems = this.evaluate(cXPathString, xNode, oNSResolver,
                       XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null)
          var aResult = [];
          for( var i = 0; i < aItems.snapshotLength; i++)
          {
             aResult[i] =  aItems.snapshotItem(i);
          }
          return aResult;
       }

       // prototying the Element
       Element.prototype.selectNodes = function(cXPathString)
       {
          if(this.ownerDocument.selectNodes)
          {
             return this.ownerDocument.selectNodes(cXPathString, this);
          }
          else{throw "For XML Elements Only";}
       }
    }

    // check for XPath implementation
    if( document.implementation.hasFeature("XPath", "3.0") )
    {
       // prototying the XMLDocument
       XMLDocument.prototype.selectSingleNode = function(cXPathString, xNode)
       {
          if( !xNode ) { xNode = this; }
          var xItems = this.selectNodes(cXPathString, xNode);
          if( xItems.length > 0 )
          {
             return xItems[0];
          }
          else
          {
             return null;
          }
       }
      
       // prototying the Element
       Element.prototype.selectSingleNode = function(cXPathString)
       {   
          if(this.ownerDocument.selectSingleNode)
          {
             return this.ownerDocument.selectSingleNode(cXPathString, this);
          }
          else{throw "For XML Elements Only";}
       }
    }
}


/**
 * 令所有class含有"dragclass"的容器均可被拖动。
 */
if(document.getElementById){
  (
    function(){
      if (window.opera){ document.write("<input type='hidden' id='Q' value=' '>"); }
   
      var n = 500;
      var dragok = false;
      var y,x,d,dy,dx;
     
      function move(e)
      {
        if (!e) e = window.event;
        if (dragok){
          d.style.left = dx + e.clientX - x + "px";
          d.style.top  = dy + e.clientY - y + "px";
          return false;
        }
      }
     
      function down(e){
        if (!e) e = window.event;
        var temp = (typeof e.target != "undefined")?e.target:e.srcElement;
        if (temp.tagName != "HTML"|"BODY" && temp.className.indexOf("dragclass")<0){
          temp = (typeof temp.parentNode != "undefined")?temp.parentNode:temp.parentElement;
        }
        if('TR'==temp.tagName){
          temp = (typeof temp.parentNode != "undefined")?temp.parentNode:temp.parentElement;
          temp = (typeof temp.parentNode != "undefined")?temp.parentNode:temp.parentElement;
          temp = (typeof temp.parentNode != "undefined")?temp.parentNode:temp.parentElement;
        }
     
        if (temp.className.indexOf("dragclass")>=0){
          if (window.opera){ document.getElementById("Q").focus(); }
          dragok = true;
          temp.style.zIndex = n++;
          d = temp;
          dx = parseInt(getStyleItem(temp,"left"))|0;
          dy = parseInt(getStyleItem(temp,"top"))|0;
          x = e.clientX;
          y = e.clientY;
          document.onmousemove = move;
          return false;
        }
      }
     
      function up(){
        dragok = false;
        document.onmousemove = null;
      }
     
      document.onmousedown = down;
      document.onmouseup = up;
   
    }
  )();
}

document.getElementsByClassName = function(clsName){
    var retVal = new Array();
    var elements = document.getElementsByTagName("*");
    for(var i = 0;i < elements.length;i++){
        if(elements[i].className.indexOf(" ") >= 0){
            var classes = elements[i].className.split(" ");
            for(var j = 0;j < classes.length;j++){
                if(classes[j] == clsName)
                    retVal.push(elements[i]);
            }
        }
        else if(elements[i].className == clsName)
            retVal.push(elements[i]);
    }
    return retVal;
}

/* 传入标签ID,可以切换该对象的显示与隐藏。 */
function switchHideShow(sTagId){
 var oTag=document.getElementById(sTagId);
 oTag.style.display=(oTag.style.display=='none'||oTag.style.display=='')?'block':'none';
}
/* 将某元素设置成页面的调度。 */
function setToBodyHeight(sTagId){
 var oTag=document.getElementById(sTagId);
 oTag.style.height=document.documentElement.clientHeight+"px";
}

==========================================================================

以上是js,下面是用法:

 

页面引用方法:

1.导入js

2.function checkForm(thisForm){

 // blnCheckAll=blnCheckAll&&valideFieldAlert("incDays","notempty","对不起,[减免天数]不能为空,请正确填写。");
     // blnCheckAll=blnCheckAll&&valideFieldAlert("incMoney","notempty","对不起,[减免金额]不能为空,请正确填写。");
     // blnCheckAll=blnCheckAll&&valideFieldAlert("incArea","notempty","对不起,[减免面积]不能为空,请正确填写。");
     // blnCheckAll=blnCheckAll&&valideFieldAlert("person1","notempty","对不起,[审核人]不能为空,请正确填写。");
     // blnCheckAll=blnCheckAll&&valideFieldAlert("incCause1","notempty","对不起,[减免原因]不能为空,请正确填写。");
     //  blnCheckAll=blnCheckAll&&valideFieldAlert("saveAct_act_partCount","notempty","对不起,[总集数]不能为空,请正确填写。");
     //  blnCheckAll=blnCheckAll&&valideFieldAlert("saveAct_act_partCount","number","对不起,[总集数]填写不正确,请正确填写。");
     // blnCheckAll=blnCheckAll&&valideFieldAlert("saveAct_act_unitPrice","notempty","对不起,[单价]不能为空,请正确填写。");
      // blnCheckAll=blnCheckAll&&valideFieldAlert("saveAct_act_unitPrice","digital","对不起,[单价]填写不正确,请正确填写。");
     // blnCheckAll=blnCheckAll&&valideFieldAlert("saveAct_act_threeToll","notempty","对不起,[三费]不能为空,请正确填写。");
      // blnCheckAll=blnCheckAll&&valideFieldAlert("saveAct_act_threeToll","digital","对不起,[三费]填写不正确,请正确填写。");
     // blnCheckAll=blnCheckAll&&valideFieldAlert("saveAct_act_totalPrice","notempty","对不起,[总价款]不能为空,请正确填写。");
     // blnCheckAll=blnCheckAll&&valideFieldAlert("saveAct_act_totalPrice","digital","对不起,[总价款]填写不正确,请正确填写。");
     // blnCheckAll=blnCheckAll&&valideFieldAlert("saveAct_act_payMode","notempty","对不起,[付款方式]不能为空,请正确填写。");   
      //blnCheckAll=blnCheckAll&&valideFieldAlert("saveAct_act_payMoney","notempty","对不起,[付款金额]不能为空,请正确填写。");
      return blnCheckAll;

 

}

 

分享到:
评论
1 楼 mht19840918 2008-02-26  
别忘了在要提交的form上加上onSubmit="return checkForm(this)"

相关推荐

    JavaScript客户端验证和页面特效制作.jar

    在"JavaScript客户端验证和页面特效制作.jar"这个资源中,我们可以推测它可能包含了一系列关于JavaScript学习的章节或教程,尤其是侧重于这两方面的内容。"chapter1"可能是系列教程的第一部分,可能涵盖了基础的...

    JavaScript客户端验证和页面特效制作

    在本课程“JavaScript客户端验证和页面特效制作”中,我们将深入探讨如何利用JavaScript来增强用户体验,并确保数据的有效性和安全性。 一、JavaScript客户端验证 客户端验证是在用户提交数据之前,在用户的设备上...

    js客户端验证常见函数

    JavaScript客户端验证是网页开发中必不可少的一环,它主要用于在用户提交数据前检查输入的有效性和格式,从而提高用户体验并减轻服务器端的压力。以下是一些常见的JavaScript验证函数及其详细说明: 1. 判断是否是...

    JavaScript客户端验证和页面特效制作(JavaScript)

    本文将深入探讨JavaScript客户端验证和页面特效制作的核心知识点。 **一、JavaScript客户端验证** 客户端验证是在用户提交表单之前,通过JavaScript在用户浏览器端进行的数据检查。这有助于提高用户体验,减少...

    JS 客户端验证JS 客户端验证JS 客户端验证JS 客户端验证JS 客户端验证

    JavaScript(JS)客户端验证是Web开发中的重要环节,它主要用于在用户提交数据前对输入进行检查,确保数据的完整性和正确性,减少服务器端的压力,提高用户体验。客户端验证通过JavaScript脚本实现,可以在用户填写...

    JS客户端验证

    JavaScript(简称JS)客户端验证是Web开发中一个关键的环节,它主要负责在用户与网页交互时,对输入数据进行实时检查,确保数据的有效性和安全性。客户端验证的优点在于可以即时反馈错误信息,提高用户体验,减少...

    JavaScript客户端验证和页面特效制作内测

    在网页开发中,JavaScript客户端验证扮演着至关重要的角色,它能够实时检查用户输入的数据,提高用户体验并减轻服务器端的压力。JavaScript客户端验证通常包括对表单数据的合法性检查,如邮箱格式、电话号码、密码...

    javascript客户端验证和页面特效制作项目案例

    这个"javascript客户端验证和页面特效制作项目案例"旨在帮助学习者掌握JavaScript的核心概念,并将其应用于实际项目中,提升网页的交互性和用户体验。 首先,客户端验证是确保用户输入数据有效性的关键步骤。...

    JavaScript客户端验证和页面特效制作全部PPT

    这份"JavaScript客户端验证和页面特效制作全部PPT"的资源,旨在深入讲解如何利用JavaScript技术实现高效且用户友好的前端功能。 首先,客户端验证是网页表单处理的关键环节,它能够实时检查用户输入的有效性,避免...

    JS客户端验证与页面特效制作

    在这个“JS客户端验证与页面特效制作”的项目实战中,我们将深入探讨如何利用JS提升用户体验并确保数据的准确性。 一、客户端验证 1. **基本验证规则**:在表单提交前,JS可以执行实时验证,如检查输入的邮箱格式...

    北大青鸟 JavaScript客户端验证和页面特效制作

    北大青鸟的这门课程,"JavaScript客户端验证和页面特效制作",旨在深入讲解这两个主题,帮助学员掌握实际开发中的关键技能。 客户端验证是提高用户体验的重要手段,它允许在用户提交数据前就检查输入的有效性,减少...

    javascript客户端验证和页面特效制作上机、课后练习答案(一)

    总结PPT则是一个全面回顾,它总结了所有章节的主要知识点,帮助学习者梳理学习路径,确保他们能够系统地理解JavaScript客户端验证和页面特效制作的各个方面。 总的来说,这份资源集为学习者提供了一个从基础到进阶...

    “JavaScript客户端验证及网页特效”课程教学方法探讨.pdf

    "JavaScript客户端验证及网页特效”课程教学方法探讨" 本篇文章探讨了“JavaScript客户端验证及网页特效”课程的教学方法,结合教学实践,对各种教学方法进行了分析和探讨。文章认为,基于工作过程、工学结合的教学...

    北大青鸟ACCP5.0 JavaScript客户端验证和页面特效制作

    "北大青鸟ACCP5.0 JavaScript客户端验证和页面特效制作"课程聚焦于利用JavaScript技术提高用户体验,确保数据输入的准确性和网页的动态效果。 在客户端验证方面,JavaScript允许开发者在用户提交表单之前对输入的...

    JavaScript客户端验证和页面特效制作(JavaScript).rar

    JavaScript客户端验证和页面特效制作(JavaScript)第一章

    JavaScript客户端验证

    JavaScript客户端验证是Web开发中的重要一环,它主要用于在用户提交数据之前检查输入的有效性,以提高用户体验并减轻服务器端的负担。在这个主题中,我们将深入探讨JavaScript在客户端验证中的应用,涵盖从基础到...

    JavaScript客户端验证和页面特效制作总结文档.doc

    JavaScript客户端验证和页面特效制作是Web开发中的重要组成部分,它们极大地提升了用户体验和网站交互性。以下是对这些主题的详细说明: 一、JavaScript基本语法 1. **脚本基本结构**:JavaScript代码通常嵌入HTML...

Global site tag (gtag.js) - Google Analytics