正则表达式以及表单元素值的判断

haleyyan 2015-09-02

在做Web网页要用表单传数据给后台处理时,需要对数据进行验证和检查:

function trimStr(str){
           return str.replace(/^\s+|\s+$/g,'');
    }
   
     function checksub(){
           var num=0;
           var str="";
           
           if($("#merchantId").val()!=""){
               var merchantIdvalue=$("#merchantId").val();
               if(trimStr(merchantIdvalue)!=""){
                   var len=trimStr(merchantIdvalue).length;
                   if(len>32){
                      num++;
                      str+="输入商户ID长度不能超过32!"+"\n";
                   }
               }else{
                   num++;
                   str+="商户ID名称不能为空!"+"\n";
               }
           }else{
               num++;
                 str+="商户ID名称不能为空!"+"\n";
           }

 1,第一个方法中,replace括号里面的是正则表达式——匹配字符串头尾的任何空白字符,包括空格、制表符、换页符等。除这个之外还有其他经常用到的正则表达式有:

只能输入数字:

function checknum(numval){
          var checknum=/^[0-9]*[0-9][0-9]*$/;
          if(numval.value!=""){
            var numvalue=numval.value;
             if(checknum.test(numvalue)){
             return true;
          }else{
             alert("只能输入数字");
             numval.value="";
             return false;
          }
          }

 只能输入邮箱格式:

function checkmail(mailval){
         var checkmail=/^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/;
         if(mailval.value!=""){
           var mailvalue=mailval.value;
            if(checkmail.test(mailvalue)){
              return true;
         }else{
            alert("只能输入邮箱格式!");
            mailval.value="";
            return false;
         }
         }

 只能输入价钱模式:

function checkprice(numval){
            var checknum=/^(0|[1-9][0-9]{0,7})(\.[0-9]{1,2})?$/;
            if(numval.value!=""){
              var numvalue=numval.value;
               if(checknum.test(numvalue)){
               return true;
            }else{
               alert("只能输入数字,且整数最多8位,小数最多2位!");
               numval.value="";
               return false;
            }
            }
         }

2,还要验证输入长度是否符合要求,以及是否为空。

最后方法将所有格式错误的信息alert出去:

if(num>0){
             alert(str);
             if(document.form2.length>0){
  for(var i=0;i<document.form2.length; i++){
   var input = document.form2.elements[i];
   if(input.value==""){
      input.focus();
      return false;
   }
   
    }
  }
 
             return false;
          }

相关推荐

ELEMENTS爱乐冬雨 / 0评论 2020-05-29