Javascript各种验证原代码

本文提供了一系列JavaScript函数,用于实现常见的验证与操作任务,包括验证输入是否为空、转换全角与半角字符、日期格式验证及比较等。

以下为 Javascript各种验证原代码,仅供参考:

(1)判断入力是否为空

function isEmpty(value){
      
if(value == null || value==''){
          
return true;
      }

      
return false;
}

(2)判断入力是否不为空

function isNotEmpty(value){
      
return !isEmpty(value);
}

(3)设置背景颜色

function setBackground(component, color){
      
if(component == null || color == null){
            
return;
      }

      component.style.backgroundColor
=color;
}

(4)全角数值转半角数值

function toHankakuNum(motoText)
{
        han 
= "0123456789.,-+";
        zen 
= "0123456789.,-+";
        str 
= "";
        
for (i=0; i<motoText.length; i++)
        
{
                c 
= motoText.charAt(i);
                n 
= zen.indexOf(c,0);
                
if (n >= 0
                      c 
= han.charAt(n);
                str 
+= c;
         }

         
return str;
}

(5)半角数值转全角数值

function toZenkakuNum(motoText)
{
        han 
= "0123456789.,-+";
        zen 
= "0123456789.,-+";
        str 
= "";
        
for (i=0; i<motoText.length; i++)
        
{
    c 
= motoText.charAt(i);
    n 
= han.indexOf(c,0);
    
if (n >= 0
                             c 
= zen.charAt(n);
    str 
+= c;
         }

         
return str;
}

(6)半角カナ转全角カナ

function toZenkaku(motoText){
        txt 
= "アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヲンァィゥェォャュョッ、。ー「」゙゚";
        zen 
= "アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヲンァィゥェォャュョッ、。ー「」";
        zen
+= "     ガギグゲゴザジズゼゾダヂヅデド     バビブベボ                              ";
        zen
+= "                         パピプペポ                             ";
        str 
= "";
        
for (i=0; i<motoText.length; i++){
                c 
= motoText.charAt(i);
                cnext 
= motoText.charAt(i+1);
                n 
= txt.indexOf(c,0);
                nnext 
= txt.indexOf(cnext,0);
            
if (n >= 0){
                     
if (nnext == 60){
                               c 
= zen.charAt(n+60);
                               i
++;
                     }
else if (nnext == 61){
                               c 
= zen.charAt(n+120);
                               i
++;
                     }
else{
                               c 
= zen.charAt(n);
                        }

                 }

             
if ((n != 60&& (n != 61)){
                         str 
+= c;
                 }

         }

        
return str;
}

(7)以CSV形式表示数据

(转)
CSV形式のデータを表示するにはobjectタグでデータバインドを行う各種パラメータを設定します。DataURLが表示するCSV形式のファイル名、UseHeaderはヘッダー付きかどうかを指定します。ヘッダーを指定し表示するデータと関連づけをdatafld属性で行います。
<html>

    
<head>
        
<meta http-equiv="content-type" content="text/html;charset=shift_jis">
        
<title>CSV形式のデータを表示する【データバインド】</title>
    
</head>

    
<body>
        
<object id="myDatabase" classid="CLSID:333C7BC4-460F-11D0-BC04-0080C7055A83">
            
<param name="DataURL" value="data.csv">
            
<param name="UseHeader" value="true">
        
</object>
        
<table datasrc="#myDatabase">
            
<thead>
                
<tr>
                    
<th>ID</th>
                    
<th>ユーザー名</td></th>
                    
<td>年齢</td>
                
</tr>
            
</thead>
            
<tbody>
                
<tr>
                    
<td align="right"><span datafld="ID"></span></td>
                    
<td align="left"><span datafld="UserName"></span></td>
                    
<td align="right"><span datafld="Age"></span></td>
                
</tr>
            
</tbody>
        
</table>
    
</body>

</html>

(8)检查是否为全角

function isFullWidth(value){
        
if(value == null || value == ""){
              
return true;
        }

        
for (var i = 0; i < value.length; ++i) {
              
var c = value.charCodeAt(i);
              
if (c < 256 || (c >= 0xff61 && c <= 0xff9f)) {
                    
return false;
              }

        }

        
return true;
}

(9)检查是否为半角カナ

function isHalfKana(value){
    
if(value == null || value == ''){
            
return true;
    }

    
var iCount;
    
var iCode;

    
for (iCount=0 ; iCount<value.length ; iCount++){
                iCode 
= value.charCodeAt(iCount);
                  
if (iCode < 0xff61 || iCode > 0xff9f){
        
return false;
            }

    }

    
return true;
}

(10)检查是否为yyyyMMdd形式的日期

function isDate(value){
          
if(value == null || value==''){
    
return true;
          }

          
var r = value.match(/^(d{1,4})(d{1,2})(d{1,2})$/);
          
if(r == null){
       
return false;
          }

          
var d= new Date(r[1], r[2]-1, r[3]);
          
return (d.getYear() == r[1&& (d.getMonth()+1== r[2&& d.getDate() == r[3]);
}

(11)去除字符串左右空格

function Trim(str){
          str 
= TrimR(str);
          str 
= TrimL(str);
          
return str;
}


 
function TrimR(str){
           
if(str.charAt(0== " " || str.charAt(0== " "){
                  str 
= str.slice(1);
                  str 
= TrimR(str); 
           }

           
return str;
}


function TrimL(str){
           
if(str.charAt(str.length - 1== " " || str.charAt(str.length - 1== " "){
                   str 
= str.slice(0, str.length - 1);
                   str 
= TrimL(str); 
           }

           
return str;
}

(12)使组件无效

function disabledComponent(component){
          
if(component != null){
                      component.disabled
=true;
          }

}

(13)使组件有效

function enabledComponent(component){
         
if(component != null){
                     component.disabled
=false;
         }

}

(14)日期大小比较

function compareDate(value1, value2){
    
if(!isDate(value1) || !isDate(value2)){
               
return -2;
        }

       
var st_Year1 = eval(value1.substring(0,4));
        
var st_Month1 = eval(value1.substring(4,6));
       
var st_Day1 =  eval(value1.substring(6,8));
       
var date1 = new Date(st_Year1,st_Month1,st_Day1);
       
var st_Year2 = eval(value2.substring(0,4));
       
var st_Month2 = eval(value2.substring(4,6));
        
var st_Day2 =  eval(value2.substring(6,8));
       
var date2 = new Date(st_Year2,st_Month2,st_Day2);
        
var milliSecond1 = date1.getTime();
        
var milliSecond2 = date2.getTime();
    
if(milliSecond1 > milliSecond2){
               
return 1;
    }
 else if (milliSecond1 == milliSecond2){
                
return 0;
    }
 else {
               
return -1;
    }

}


function isDate(value){
    
if(value == null || value==''){
             
return true;
        }

    
var r = value.match(/^(d{1,4})(d{1,2})(d{1,2})$/);
    
if(r == null){
              
return false;
       }

       
var d= new Date(r[1], r[2]-1, r[3]);
       
return (d.getYear() == r[1&& (d.getMonth()+1== r[2&& d.getDate() == r[3]);
}
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值