JavaScript常用检测脚本(二)

/**
 * 用途:检查输入字符串是否只由英文字母和数字和下划线组成
 * 输入:s, 字符串
 * 返回:如果通过验证返回true,否则返回false
 
*/
function isNumberOr_Letter( s ){
    
var regu = "^[0-9a-zA-Z\_]+$";
    
var re = new RegExp(regu);
    
if (re.test(s))  return true;
    
else    return false;
}

/**
 * 用途:检查输入字符串是否只由英文字母和数字组成
 * 输入:s, 字符串
 * 返回:如果通过验证返回true,否则返回false
 
*/
function isNumberOrLetter( s ){//判断是否是数字或字母
    var regu = "^[0-9a-zA-Z]+$";
    
var re = new RegExp(regu);
    
if (re.test(s))  return true;
    
else return false;
}

/**
 * 用途:检查输入字符串是否只由汉字、字母、数字组成
 * 输入:value, 字符串
 * 返回:如果通过验证返回true,否则返回false
 
*/
function isChinaOrNumbOrLett( s ){
    
var regu = "^[0-9a-zA-Z\u4e00-\u9fa5]+$"
    
var re = new RegExp(regu);
    
if (re.test(s))   return true;
    
else return false;

}

/**
 * 用途:判断是否是日期
 * 输入:date:日期;fmt:日期格式
 * 返回:如果通过验证返回true,否则返回false
 
*/
function isDate( date, fmt ) {
    
if (fmt==null) fmt="yyyyMMdd";
    
var yIndex = fmt.indexOf("yyyy");
    
if(yIndex==-1return false;
    
var year = date.substring(yIndex,yIndex+4);
    
var mIndex = fmt.indexOf("MM");
    
if(mIndex==-1return false;
    
var month = date.substring(mIndex,mIndex+2);
    
var dIndex = fmt.indexOf("dd");
    
if(dIndex==-1return false;
    
var day = date.substring(dIndex,dIndex+2);
    
if(!isNumber(year)||year>"2100" || year< "1900"return false;
    
if(!isNumber(month)||month>"12" || month< "01"return false;
    
if(day>getMaxDay(year,month) || day< "01"return false;
    
return true;
}
 
/**
 * 用途:获取每月的最后一天日期值.
 * 输入:date:年份;month:月份
 * 返回:如果通过验证返回true,否则返回false
 
*/
function getMaxDay(year,month) {
    
if(month==4||month==6||month==9||month==11)
        
return "30";
    
if(month==2)
        
if(year%4==0&&year%100!=0 || year%400==0)
            
return "29";
        
else
            
return "28";
    
return "31";
}

/**
 * 用途:字符1是否以字符串2结束
 * 输入:str1:字符串;str2:被包含的字符串
 * 返回:如果通过验证返回true,否则返回false
 
*/
function isLastMatch(str1,str2){
    
var index = str1.lastIndexOf(str2);
    
if(str1.length==index+str2.length) return true;
    
return false;
}

/**
 * 用途:字符1是否以字符串2开始
 * 输入:str1:字符串;str2:被包含的字符串
 * 返回:如果通过验证返回true,否则返回false
 
*/
function isFirstMatch(str1,str2){
    
var index = str1.indexOf(str2);
    
if(index==0return true;
    
return false;
}

/**
 * 用途:字符1是包含字符串2
 * 输入:str1:字符串;str2:被包含的字符串
 * 返回:如果通过验证返回true,否则返回false
 
*/
function isMatch(str1,str2){
    
var index = str1.indexOf(str2);
    
if(index==-1return false;
    
return true;
}

/**
 * 用途:检查输入的起止日期是否正确,规则为两个日期的格式正确,且结束如期>=起始日期
 * 输入:startDate:起始日期(字符串),   endDate:结束如期(字符串)
 * 返回:如果通过验证返回true,否则返回false
 
*/
function checkTwoDate( startDate,endDate ) {
    
if!isDate(startDate) ) {
        alert(
"起始日期不正确!");
        
return false;
    } 
else if!isDate(endDate) ) {
        alert(
"终止日期不正确!");
        
return false;
    } 
else if( startDate > endDate ) {
        alert(
"起始日期不能大于终止日期!");
        
return false;
    }
    
return true;
}
posted @ 2007-11-19 16:18  nestea  阅读(269)  评论(0编辑  收藏  举报