分享
 
 
 

JavaScript校验函数库

王朝学院·作者佚名  2009-06-23
窄屏简体版  字體: |||超大  

程序代码

/**

* JavaScript 检查库

* @author Jarry.li

* @version 2.01

* @last modify time 2003/09/11

* #@ validate.js

* 第一类 检查并返回检查结果(true or false)

* a-1. ifDigit(str,allowNull) 是否为合法非负整数(examples/ifDigit.html)

* a-2. ifLetter(str,allowNull) 是否为英文字母

* a-3. ifExist(arr,element) 某个元素是否存在于某个数组中

* a-4. ifDay(str,allowNull) 是否为天数

* a-5. ifMonth(str,allowNull) 是否为月份

* a-6. ifYear(str,allowNull) 是否为年份

* a-7. ifYearInRange(str,min_year,max_year,allowNull) 是否为指定范围内的合法年份

* a-8. ifDate(String,allowNull) 是否为日期

* a-9. ifEmail(String,allowNull) 是否为邮件地址

* a-10. ifPhone(String,allowNull) 是否为电话号码

* a-11. ifGBK(String,allowNull) 是否包含中文字符

* a-12.ifMoney(String,allowNull) 是否为合法货币数字

* a-13 ifMoneyInRange(String,int,int,allowNull) 判断字符串是否为合法钱数,且是否超过限定范围

* a-14. ifAvildDate(year,month,day) 判断是否为合法日期

* a-15. ifSelectedButton(buttonGroup) 判断buttongroup为名的一组radio中有无被选中的项

* 第二类 检查后直接报错

* b-1. isDigit(Object,allowNull) 是否为数字

* b-2. isDigitInMaxLen(object,maxlength,allowNull) 是否为非负整数,且长度在指定范围内

* b-3. isDigitInRange(object,minValue,maxValue,allowNull) 是否为非负整数,且大小在指定范围内

* b-4. isLetter(Object,allowNull) 是否为字母

* b-5. isDay(Object,allowNull) 是否为天数

* b-6. isMonth(Object,allowNull) 是否为月份

* b-7. isYear(Object,allowNull) 是否为年份

* b-8. isYearInRange(object,min_year,max_year,allowNull) 是否为指定范围内的合法年份

* b-9. isDate(Object,allowNull) 是否为日期

* b-10. isEmail(Object,allowNull) 是否为邮件地址

* b-11. isPhone(Object,allowNull) 是否为电话号码

* b-12. isGBK(Object,allowNull) 是否为中文字符

* b-13. isMoney(Object,allowNull) 是否为合法货币数字

* b-14. isMoneyInRange(object,minValue,maxValue,allowNull) 判断是否合法钱数且是否超过限定额度

* b-15. isLengthInRange(Object, min, max,allowNull) 字符串长度是否在指定长度范围内

* b-16. checkValidDate(yyObject,mmObject,ddObject,allowNull) 对日期进行全面的检查

* b-17. checkValidDateRange(yyObject1,mmObject1,ddObject1,allowNull1,yyObject2,mmObject2,ddObject2,allowNull2)

* 检查起始日期及截止日期

* b-15. showMsg(String, Object) 显示提示信息String,光标焦点落在Object上,返回false

* 第三类 功能函数,并不报错

* c-1. getLength(String) 获取字符长度(每个中文字符为2个字符)

* c-2. trim(String) 去掉字符串前后的空格并返回

* c-3. textsTrim(formname) 将form中所有的text文本进行trim操作。

*/ //日期数组

arr_day=new Array("1","2","3","4","5","6","7","8","9","10",

"11","12","13","14","15","16","17","18","19","20",

"21","22","23","24","25","26","27","28","29","30","31",

"01","02","03","04","05","06","07","08","09");

//月份数组

arr_mon=new Array("1","2","3","4","5","6","7","8","9","10","11","12",

"01","02","03","04","05","06","07","08","09");

//建立者:jiarry@hotmail.com

//判断字符串是否为合法非负整数

// a-1 ifDigit(str,allowNull)

function ifDigit(str,allowNull){

slen=str.length;

if(slen==0) return allowNull;

for (i=0; i<slen; i++){

cc = str.charAt(i);

if (cc <"0" || cc >"9"){

return false;

}

}

return true;

}

//建立者:jiarry@hotmail.com

//功能:判断字符串是否都是英文字母

// a-2 ifLetter(str,allowNull)

function ifLetter(str,allowNull ){

slen=getLength(str);

if (slen==0) return allowNull;

str = str.toUpperCase();

for ( var i = 0 ; i < slen; i ++ ){

if ( str.charAt(i) < "A" || str.charAt(i) > "Z" )

return false;

}

return true;

}

//建立者:jiarry@hotmail.com

//功能:判断某个元素是否存在于数组中

//a-3 ifExist(arr,element) arr:数组;element:某个元素

function ifExist(arr,element){

for(var i=0;i<arr.length;i++){

if(element==arr[i]) return true;

}

return false;

}

//建立者:jiarry@hotmail.com

//功能:判断是否为合法天数

//a-4 ifDay(str,allowNull)

function ifDay(str,allowNull){

slen=getLength(str);

if (slen==0) return allowNull;

return ifExist(arr_day,str);

}

//建立者:jiarry@hotmail.com

//功能:判断是否为合法月份

//a-5 ifMonth(str,allowNull)

function ifMonth(str,allowNull){

slen=getLength(str);

if (slen==0) return allowNull;

return ifExist(arr_mon,str);

}

//建立者:jiarry@hotmail.com

//功能:判断是否为合法年份(要求是四位整数,且数字>=1800 并且<=2050)

//a-6 ifYear(str,allowNull)

function ifYear(str,allowNull){

return ifYearInRange(str,1800,2050,allowNull);

}

//建立者:jiarry@hotmail.com

//功能:判断是否为合法年份(要求是四位整数,且数字>=min_year 并且<=max_year)

//a-7 ifYearInRange(str,min_year,max_year,allowNull)

function ifYearInRange(str,min_year,max_year,allowNull){

slen=getLength(str);

if (slen==0) return allowNull;

if (slen!=4) return false;

if (!ifDigit(str,allowNull)) return false;

if (parseInt(str)<min_year || parseInt(str)>max_year) return false;

return true;

}

//建立者:jiarry@hotmail.com

//功能:判断是否为合法日期格式(要求是八位整数,格式为"yyyymmdd")

//a-8 ifDate(str,allowNull)

function ifDate(str,allowNull){

/*

slen=getLength(str);

if(slen==0) return allowNull;

if(slen!=8) return false;

if(!ifDigit(str,false)) return false;

var year = str.substr(0,4);

if(!ifYear(year,false)) return false;

var month= str.substr(4,2);

if(!ifMonth(month,false)) return false;

var day= str.substr(6,2);

if(!ifDay(day,false)) return false;

if(!ifAvildDate(year,month,day)) return false;

return true;

*/

/*slen=getLength(str);

if(slen==0) return allowNull;

if(slen!=10) return false;

var year = str.substr(0,4);

if(!ifYear(year,false)) return false;

var s = str.substr(4,1);

if(s!="-") return false;

var month= str.substr(5,2);

if(!ifMonth(month,false)) return false;

var s = str.substr(7,1);

if(s!="-") return false;

var day= str.substr(8,2);

if(!ifDay(day,false)) return false;

if(!ifAvildDate(year,month,day)) return false;

return true; */

slen=getLength(str);

if(slen==0) return allowNull;

if(slen<8 || slen>10) return false;

var year = str.substr(0,4);

if(!ifYear(year,false)) return false;

var s = str.substr(4,1);

if(s!="-") return false;

str = str.substr(5);

var pos = str.indexOf("-");

if(pos == -1) return false;

var month = str.substring(0,pos);

if(!ifMonth(month,false)) return false;

var day = str.substr(pos + 1);

if(!ifDay(day,false)) return false;

var yearint = parseInt(year);

var monthint = parseInt(month);

var dayint = parseInt(day);

if(yearint%4 == 0)

{

if(monthint==2 && dayint>29) return false;

}

else

{

if(monthint==2 && dayint>28) return false;

}

return true;

}

//建立者:jiarry@hotmail.com

//判断字符串是否为合法邮件地址

// a-9 ifEmail(str,allowNull)

function ifEmail(str,allowNull){

if(str.length==0) return allowNull;

i=str.indexOf("@");

j=str.lastIndexOf(".");

if (i == -1 || j == -1 || i > j) return false;

return true;

}

//建立者:jiarry@hotmail.com

//判断url是否为正确的恶地址;

//0-9,a-z

function validateURL(url){

//validateURL

if(url.search(/^[A-Za-z0-9 -]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/)!=0)else if(url.substring(0,4)=="www.")else

}

//建立者:jiarry@hotmail.com

//判断字符串是否为合法电话号码

// a-10 ifPhone(str,allowNull)

function ifPhone(str,allowNull){

slen=getLength(str);

if (slen==0) return allowNull;

for (i=0; i<slen; i++)

return true;

}

//建立者:jiarry@hotmail.com

//判断字符串是否为合法手机号码

function ifMobile(str,allowNull){

slen=getLength(str);

if(slen==0) return allowNull;

if(slen!=11) return false;

if(!ifDigit(str,allowNull))

return false;

if(str.substring(0,2) != '13')

return false;

if(str.charAt(2)=='2')

return false;

return true;

}

/*

建立者:lichunping at 2004-03-24

判断字符串是否为中国移动手机号码

*/

function ifChinaMobilePhone(PhoneNumber,allowNull)

{

if ( ifMobile(PhoneNumber,allowNull) )

return false ;

}

//建立者:jiarry@hotmail.com

//判断字符串是否包含中文字符

// a-11 ifGBK(str,allowNull)

function ifGBK(str,allowNull){

for(var i=0;i<str.length;i++)

return false;

}

//建立者:jiarry@hotmail.com

//判断单双字节的长度

// 设str某输入框内的值,若是双字节则长度多增加一个;

function bytes(str){

if(typeof(str)!='string')

var len = 0;

for(var i = 0; i < str.length; i++)

return len;

}

//建立者:jiarry@hotmail.com

//限制最大字符输入,若输入框里的字符长度超出则提示

//判断单双字节;

// countLength(object)

function countLength(maxLen,obj)

{

var dLen = 0,sLen = 0, msg = "";

for(i=0; i< obj.length; i++ )

totalLen = sLen+dLen;

overLen = totalLen-maxLen;

if( totalLen > maxLen)

return msg;

}

//建立者:jiarry@hotmail.com

//限制最大字符输入,若输入框里的字符长度超出则提示

//判断单双字节;

// countLength(object)

maxLen=100;

function countLength(o)

{

var dLen;

var sLen;

dLen=0;sLen=0;

for(i=0;i<o.value.length;i++)

tLen=sLen+dLen;

lNum=tLen-maxLen;

if(tLen>maxLen)

}

//建立者:jiarry@hotmail.com

//判断字符串是否为合法钱数

// a-12 ifMoney(String)

function ifMoney(str,allowNull){

if (str.length==0) return allowNull;

if ( ( pos = str.indexOf( "." ) ) != -1 )

for ( var i = 0 ; i < str.length; i ++ )

return true;

}

//建立者:jiarry@hotmail.com

//判断字符串是否为合法钱数,且是否在限定范围内

// a-13 ifMoneyInRange(str,minValue,maxValue,allowNull)

function ifMoneyInRange(str,minValue,maxValue,allowNull){

if (str.length==0) return allowNull;

if(!ifMoney(str)) return false;

if(parseFloat(str)>maxValue) return false;

if(parseFloat(str)<minValue) return false;

return true;

}

//建立者:jiarry@hotmail.com

//判断是否为合法日期

// a-14 ifAvildDate(year,month,day)

function ifAvildDate(year,month,day){

if((month==4||month==6||month==9||month==11) && day>30)else if(month==2)else if(day>31)

return true;

}

//建立者:jiarry@hotmail.com

//判断buttongroup为名的一组radio,checkbox中有无被选中的项

// a-15 ifSelectedButton(buttonGroup)

function ifSelectedButton(buttonGroup){

if(typeof buttonGroup=="undefined") return false;

if(typeof buttonGroup.length=="undefined")

for (var i=0;i<buttonGroup.length;i++)

return false;

}

//建立者:jiarry@hotmail.com

//功能: 检查字段长度是否在指定范围内

//示例: ifLengthInRange(form1.t1, 4,10,false)

//输入参数: 需要检查的表单对象名称,最小长度,最大长度

//输出参数: true or false

// a-16 ifLengthInRange(obj, min, max,allowNull)

function ifLengthInRange(obj, min, max,allowNull){

//obj.value=trim(obj.value);

slen=getLength(obj.value);

if(slen==0)

if (slen < min) return false;

if (slen > max) return false;

return true;

}

//建立者:jiarry@hotmail.com

//功能: 检查是否为非负整数

//示例: isDigit(String,allowNull)

//输入参数: 需要检查的表单对象名称

//输出参数: true或出错信息

// b-1 isDigit(Object,allowNull)

function isDigit(obj,allowNull){

obj.value=trim(obj.value);

slen=getLength(obj.value);

if(slen==0)

for (i=0; i<slen; i++)

return true;

}

//建立者:jiarry@hotmail.com

//功能: 检查是否为非负整数,并且长度不超过指定限制

//示例: isDigitInMaxLen(String obj,int length,boolean allowNull)

//输入参数: 需要检查的表单对象名称,允许的最大长度

//输出参数: true或出错信息

// b-2 isDigitInMaxLen(Object,maxlength,allowNull)

function isDigitInMaxLen(obj,maxlength,allowNull){

obj.value=trim(obj.value);

slen=getLength(obj.value);

if(slen==0)

if(slen>maxlength) return showMsg("长度超过限制,最大长度为"+maxlength+".",obj);

for (i=0; i<slen; i++)

return true;

}

//b-3 isDigitInRange(object,minValue,maxValue,allowNull)

function isDigitInRange(obj,minVal,maxVal,allowNull){

obj.value=trim(obj.value);

if(obj.value.length==0)

if(!isDigit(obj,false)) return false;

if(obj.value<minVal)

return showMsg("输入的数值太小,最小值为"+minVal,obj);

if(obj.value>maxVal)

return showMsg("输入的数值太大,最大值为"+maxVal,obj);

return true;

}

//建立者:jiarry@hotmail.com

//功能:判断字符串是否都是字母

//b-4 isLetter(Object,allowNull)

function isLetter(obj,allowNull){

obj.value=trim(obj.value);

str = obj.value;

slen=getLength(str);

if ( slen == 0 )

str = str.toUpperCase();

for ( var i = 0 ; i < slen; i ++ )

return true;

}

//b-5 isDay(Object,allowNull)

function isDay(obj,allowNull){

obj.value=trim(obj.value);

slen=getLength(obj.value);

if(slen==0)

if (!ifDigit(obj.value)) return false;

if (obj.value < "01" || obj.value > "31")

return true;

}

// b-6 isMoneth(Object,allowNull)

function isMonth(obj,allowNull){

obj.value=trim(obj.value);

slen=getLength(obj.value);

if(slen==0)

if (!ifDigit(obj.value)) return false;

if(slen!=2) return showMsg("必须输入两位数字(01~12).",obj);

if (obj.value < "01" || obj.value > "12")

return true;

}

//建立者:默认

//功能:检查是否合法年份

//示例:isYear(Object,allowNull)

//输入参数:被检查字符串

//输出参数:true 或 错误信息

// b-7 isYear(Object,allowNull)

function isYear(obj,allowNull){

return isYearInRange(obj,1800,2050,allowNull);

}

// b-8 isYearInRange(object,min_year,max_year,allowNull)

function isYearInRange(obj,min_year,max_year,allowNull){

obj.value=trim(obj.value);

slen=getLength(obj.value);

if(slen==0)

if (slen!=4) return showMsg("输入的年份不合要求,请输入一个合理年份("+min_year+"~"+max_year+").",obj);

if (!ifDigit(obj.value,false)) return showMsg("输入的年份不合要求,请输入一个合理年份("+min_year+"~"+max_year+").",obj);

if (parseInt(obj.value)<min_year || parseInt(obj.value)>max_year)

return showMsg("输入的年份不合要求,请输入一个合理年份("+min_year+"~"+max_year+").",obj);

return true;

}

//建立者:jiarry@hotmail.com

//功能:检查是否合法日期

//示例:isDate(Object)

//输入参数:被检查字符串

//输出参数:true 或 错误信息

// b-9 isDate(Object)

function isDate(obj,allowNull){

obj.value=trim(obj.value);

slen=getLength(obj.value);

if(slen==0)

if (!ifDigit(obj.value))else if (slen < 8)

year = obj.value.substr(0,4);

if(!ifYear(year,false)) return showMsg("日期中年份输入不合理,应在1800~2050之间.",obj);

month = obj.value.substr(4,2);

if(!ifMonth(month,false)) return showMsg("日期中月份输入不合理,应在01~12之间.",obj);

day = obj.value.substr(6,2);

if(!ifDay(day,false)) return showMsg("日期中日子输入不合理,应在01~31之间.",obj);

if(!ifAvildDate(year,month,day)) return showMsg("输入的日期不存在.",obj);

return true;

}

//b-10 isEmail(Object)

function isEmail(obj,allowNull){

obj.value=trim(obj.value);

slen=getLength(obj.value);

if(slen==0)

i=obj.value.indexOf("@");

j=obj.value.lastIndexOf(".");

// if (! ifGBK(obj)) i = -1;

if (i == -1 || j == -1 || i > j) return showMsg("邮件地址输入不合理.",obj);

return true;

}

// b-11 isPhone(Object)

function isPhone(obj,allwoNull){

obj.value=trim(obj.value);

slen=getLength(obj.value);

if(slen==0)

for (i=0; i<slen; i++)

return true;

}

// b-12 isGBK(Object,allowNull)

function isGBK(obj,allowNull){

obj.value=trim(obj.value);

slen=getLength(obj.value);

if(slen==0)

for(var i=0;i<obj.value.length;i++) http://bizhi.knowsky.com/

return showMsg("输入的字串中没有中文字符",obj);

}

//建立者:jiarry@hotmail.com

//判断字符串是否为合法钱数

// b-13 isMoney(Object,allowNull)

function isMoney(obj,allowNull){

obj.value=trim(obj.value);

slen=getLength(obj.value);

if(slen==0)

if (ifMoney(obj.value,false))else

return true;

}

//建立者:jiarry@hotmail.com

//判断是否合法钱数且是否超过限定额度

//b-14 isMoneyInRange(obj,minValue,maxValue)

function isMoneyInRange(obj,minValue,maxValue,allowNull){

obj.value=trim(obj.value);

slen=getLength(obj.value);

if(slen==0)

if(!ifMoneyInRange(obj.value,minValue,maxValue,false))

return true;

}

//建立者:jiarry@hotmail.com

//功能: 检查字段长度是否在指定范围内

//示例: isLengthInRange(form1.t1, 4,10)

//输入参数: 需要检查的表单对象名称,最小长度,最大长度

//输出参数: true

// b-15 isLengthInRange(obj, min, max,allowNull)

function isLengthInRange(obj, min, max,allowNull){

//obj.value=trim(obj.value);

slen=getLength(obj.value);

if(slen==0)

if (slen < min) return showMsg("请至少输入 " + min + " 个字符.",obj);

if (slen > max) return showMsg("请最多输入 " + max + " 个字符.",obj);

return true;

}

//建立者:jiarry@hotmail.com

//功能:全选或取消全选form里的checkbox,参数1即为全选,否则即取消;

function checkall(obj,parm){//全选or取消全选;

for(var i=0;i<obj.elements.length;i++)

}

//建立者:jiarry@hotmail.com

//功能:反选form里的checkbox;

function reverseCheck(obj){

for(var i=0;i<obj.elements.length;i++)

}

//建立者:jiarry@hotmail.com

//功能:判断form里的元素是否已经有child这样的值;

//更多限制可以通过element的tagName,type,name等来判断;

function isExistElement(child,obj){

for(var i=0;i<obj.elements.length;i++)

return false;

}

//建立者:jiarry@hotmail.com

//功能:对日期进行全面的检查

//输入参数:yyObject:年的object;mmObject:月的object;ddObject:日的object;

//输入参数:allowNull:true允许日期为空;false:必须选择日期

//输出参数:ture of false;

// b-16 checkValiDate(mmObject,ddObject,yyObject,allowNull)

function checkValidDate(yyObject,mmObject,ddObject,allowNull){

if(allowNull)else

if(!yyObject.options[0].selected)

return true;

}

//建立者:jiarry@hotmail.com

//功能:对日期进行全面的检查

//输入参数:yyObject1:其始年的object;mmObject1:其始月的object;ddObject1:其始日的object;

//输入参数:allowNull1:起始日期true允许日期为空;false:必须选择日期

//输入参数:yyObject2:截止年的object;mmObject2:截止月的object;ddObject2:截止日的object;

//输入参数:allowNull2:截止日期true允许日期为空;false:必须选择日期

//输出参数:ture of false;

// b-17 checkValidDateRange(mmObject1,ddObject1,yyObject1,allowNull1,mmObject2,ddObject2,yyObject2,allowNull2)

function checkValidDateRange(yyObject1,mmObject1,ddObject1,allowNull1,yyObject2,mmObject2,ddObject2,allowNull2){

if(!checkValidDate(mmObject1,ddObject1,yyObject1,allowNull1)) return false;

if(!checkValidDate(mmObject2,ddObject2,yyObject2,allowNull2)) return false;

if((!yyObject1.options[0].selected) && (!yyObject2.options[0].selected)){

date1=new Date(yyObject1-1900,mmObject1-1,ddObject1);

date2=new Date(yyObject2-1900,mmObject2-1,ddObject2);

if(date1>date2)

}

return true;

}

//建立者:jiarry@hotmail.com

//功能:显示提示信息Msg,光标焦点落在Obj上,返回false

// 主要用于检查必要字段是否正确

//示例:showMsg("用户名不能为空.",myform.username)

//输入参数:Msg(提示信息) Obj(光标焦点对象)

//输出参数:false

// b-18 showMsg(String, Object)

function showMsg(Msg, Obj){

alert( Msg );

Obj.focus();

return false;

}

//建立者:jiarry@hotmail.com

//功能:显示提示信息Msg,光标焦点落在Obj上

// 主要用于检查必要字段是否正确

//示例:showMsg2("用户名不能为空.",myform.username)

//输入参数:Msg(提示信息) Obj(光标焦点对象)

//输出参数:false

// b-19 showMsg2(String, Object)

function showMsg2(Msg, Obj){

alert( Msg );

Obj.focus();

return;

}

/**

以下是第三类

*/

//建立者:jiarry@hotmail.com

//加入了汉字的长度判断

// c-1 getLength(String)

function getLength(str){

var templen=str.length;

if(navigator.appName=='Netscape') return templen;

for(var i=0;i<str.length;i++)

return templen;

}

//建立者:jiarry@hotmail.com

//功能:去掉字符串前后的空格并返回

//输入参数:inputStr(待处理的字符串)

//输出参数:inputStr(处理后的字符串)

// c-2 trim(String)

function trim(inputStr){

var result = inputStr;

while (result.substring(0,1) == " ")

while (result.substring(result.length-1, result.length) == " ")

return result;

}

//建立者:jiarry@hotmail.com

//功能:去掉字符串前后的空格并返回

//输入参数:inputStr(待处理的字符串)

//输出参数:inputStr(处理后的字符串)

// c-2 string.trim();

String.prototype.trim = function()

{

return this.replace(/(^\s*)|(\s*$)/g, "");

}

//Trim,参数String

function trim(myStr)

{

var pos1=-1;

var pos2=-1;

for(var i=0;i<myStr.length;i++)

if(pos1<0 || pos2 <0) return("");

return(myStr.substring(pos1,pos2));

}

function trim(s)

{

if (s == null)

var i;

var beginIndex = 0;

var endIndex = s.length - 1;

for (i=0; i<s.length; i++)

for (i = s.length - 1; i >= 0; i--)

if (endIndex < beginIndex)

return s.substring(beginIndex, endIndex + 1);

}

//建立者:jiarry@hotmail.com

//功能:将form中所有的text文本进行trim操作。

//输入参数:myform(form名)

//输出参数:无

// c-3 textTrim(form名称)

function textsTrim(myform){

for(var i=0;i<myform.elements.length;i++)

}

//建立者:jiarry@hotmail.com

//功能:将form某一input框或textarea里的内容copy至粘贴板

//输入参数:myform(input对象名称)

//输出参数:无

function copyCode(obj) {

var rng = document.body.createTextRange();

rng.moveToElementText(obj);

rng.scrollIntoView();

rng.select();

rng.execCommand("Copy");

rng.collapse(false);

}

//建立者:jiarry@hotmail.com

//功能:以HTML页面方式运行某一input或textarea里的内容//firefox下可能不支持

//输入参数:myform(input对象名称)

//输出参数:无

function runCode(obj) {

var winname = window.open('', "_blank", '');

winname.document.open('text/html', 'replace');

winname.document.writeln(obj.value);

winname.document.close();

}

//建立者:jiarry@hotmail.com

//功能:将form某一input框或textarea里的内容另存为//firefox下可能不支持

//输入参数:myform(input对象名称)

//输出参数:无

function saveCode(obj) {

var winname = window.open('', '_blank', 'top=10000');

winname.document.open('text/html', 'replace');

winname.document.writeln(obj.value);

winname.document.execCommand('saveas','','code.htm');

winname.close();

}

//建立者:jiarry@hotmail.com

//功能:相当于java里的replaceAll,可以替换字符里的包含的某个全部字符串

//输入参数:被替换的字符串与要替换的字符串

//输出参数:无

String.prototype.replaceAll = strReplace;

function strReplace(findText, replaceText) {

var str = new String(this);

while (str.indexOf(findText)!=-1)

return str;

}

String.prototype.replaceAll = strreplace;

function strreplace( str1, str2 ){

return this.replace( new RegExp( str1,"g" ), str2);

}

//正则表达式全部替换字符,与tempStr.replaceAll()相当;

//建立者:jiarry@hotmail.com

//功能:将form某一textarea里的内容里的br清除;将回车替换成<br />之类

//输入参数:myform(input对象名称)

//输出参数:无

function cleanBR() {

var area = document.getElementsByTagName('TEXTAREA');

for (var i=0; i<area.length; i++)

}

//建立者:jiarry@hotmail.com

//功能:将属性rel为blank的链接用window.open()的方式打开。

//比如<a href="#" rel="blank"></a>

//输入参数:myform(input对象名称)

//输出参数:无

function tBlank(){

var aLinks=document.getElementsByTagName("a");

for (var i=0;i<aLinks.length;i++)

}

//建立者:jiarry@hotmail.com

//功能:检查和设置数字

//比如<a href="#" rel="nubmer"></a>

//输入参数:myform(input对象名称)

//输出参数:无

function setNum(){

var inp= document.getElementsByTagName("input");

//alert(inp.length);

for(var i=0;i<inp.length;i++)

}

//建立者:jiarry@hotmail.com

//功能:验证是否为数字与isNaN()相反

//输出参数:返回true或者false

function isNum(obj){

for(var i=0; i < obj.value.length;i++)

return true;

}

//建立者:jiarry@hotmail.com

//正则表达式去除左右空格。

//返回去除后的字符串

function trim(s) {

return s.replace( /^\s*/, "" ).replace( /\s*$/, "" );

}

//建立者:jiarry@hotmail.com

//正则表达式Email的验证

//验证是否含有@.等

function validateEmail(email){

var myReg = /^[_a-z0-9]+@([_a-z0-9]+\.)+[a-z0-9]$/;

if(myReg.test(email)==false)

return true;

}

//建立者:jiarry@hotmail.com

//正则表达式电话的验证

//验证是否含有@.等

function validatePhone(phone){

var myReg = /(^[0-9]\-[0-9]$)|(^[0-9]$)|(^\([0-9]\)[0-9]$)|(^013[0-9]$)/;

if(myReg.test(phone)==false)

return true;

}

//建立者:jiarry@hotmail.com

//验证字符长度是否超出某个值

//返回true或false

function validateMaxLength(v, maxlen){

if (trim(v).length > maxlen)

return true;

}

/*

检查18位身份证最后一位即校验码是否正确

Author:lichunping@baidu.com;jarryli@gmail.com;

homepage:http://jiarry.126.com;

bolg:http://jiarry.blogchina.com;

1,∑(a[i]*W[i]) mod 11 ( i = 2, 3, , 18 ) (1) ;

2,加权因子分别为 Wi: 7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2 ;

3,将前17位号码分别乘以各自的加权因子,再求和除以11,再取余数。

4,用余数对应下方的校验码

5,Y余数: 0 1 2 3 4 5 6 7 8 9 10 ;

6,校验码: 1 0 X 9 8 7 6 5 4 3 2 ;

*/

var ai=new Array();//用户的身份证号码数组;

var wi=[7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2];//17位数对应的加权因子,自左至右;

var yi=[0,1,2,3,4,5,6,7,8,9,10];//余数;

var vi=["1","0","X","9","8","7","6","5","4","3","2"];//余数对应的校验码;

var r;//最终的校验码;

var sum;//和

var y;//余数

//用法:getVerifyCode(this.form.number)

//返回正确的验证码;

function getVerifyCode(num){//17位的号码请求,则可以返回检验码;

r=0;y=0;sum=0;

var v=num;

if( typeof(num) != "undefined" && typeof(num) != "string" && num.type == "text" ) v = num.value;

v=v.toUpperCase();var vl;

if(v.length==18)

vl=v.length-1;

else

vl=v.length;

if(vl!=17)

for(var i=0;i<vl;i++)

y=sum%11;

r=vi[y];//校验码中的第y个即时校验码;

return r;//返回18位身份证的校验码;

}

//用法:checkIdVerifyCode(this.form.number)

//返回true或false;

function checkIdVerifyCode(o){

var v = o;

if( typeof(o) != "undefined" && typeof(o) != "string" && o.type == "text" )v=o.value;

var num18 = v.substr(17,1);

/*//号码验证不一定需要;

var num17 = v.substring(0,17);

if(v.length != 18)else if(!isNaN(v))else if( num18.toUpperCase() == "X" && !isNaN( num17 ))else*/

if(getVerifyCode(v) == num18)

return true;

else

return false;

}

// get absolute Left position

//建立者:jiarry@hotmail.com

//返回对象位于窗口的绝对左边距离

function getAbsoluteLeft( ob ){

if(!ob)

var obj = ob;

var objLeft = obj .offsetLeft;

while( obj != null && obj .offsetParent != null && obj .offsetParent.tagName != "BODY" )

return objLeft ;

}

// get absolute TOP position

//建立者:jiarry@hotmail.com

//返回对象位于窗口的绝对上边距离

function getAbsoluteTop( ob ){

if(!ob)

var obj = ob;

var objTop = obj .offsetTop;

while( obj != null && obj .offsetParent != null && obj .offsetParent.tagName != "BODY" )

return objTop ;

}

// get absolute TOP position

//建立者:jiarry@hotmail.com

//检查颜色值是否为真;

//用法: if( isAllNum16("#000000") )alert("合法颜色");

function isNum16(ch)

{

if (ch >= '0' && ch <= '9')return true;

if (ch >= 'A' && ch <= 'F')return true;

if (ch >= 'a' && ch <= 'f')return true;

return false;

}

function isAllNum16(str1)

{//判断颜色值。除第一个字符#外的任一个值是否大于等a,A,0,小于等于f,F,9,否则报错。

for (i=1; i<str1.length; i++)

return true;

}

/**

* Read the JavaScript cookies tutorial at:

* http://www.netspade.com/articles/javascript/cookies.xml

*/

/**

* Sets a Cookie with the given name and value.

*

* name Name of the cookie

* value Value of the cookie

* [expires] Expiration date of the cookie (default: end of current session)

* [path] Path where the cookie is valid (default: path of calling document)

* [domain] Domain where the cookie is valid

* (default: domain of calling document)

* [secure] Boolean value indicating if the cookie transmission requires a

* secure transmission

*/

function setCookie(name, value, expires, path, domain, secure)

{//时间,域名,路径等可以根据需要来设定

//var path="/";

//var domain="baidu.com";

var expdate = new Date();

expdate.setTime(expdate.getTime() + (365*24*120));//设为1年时效

expires = expdate;

document.cookie= name + "=" + escape(value) +

((expires) ? "; expires=" + expires.toGMTString() : "") +

((path) ? "; path=" + path : "") +

((domain) ? "; domain=" + domain : "") +

((secure) ? "; secure" : "");

}

function readCookie(name) {

//http://www.quirksmode.org/js/cookies.html#link7

var nameEQ = name + "=";

var ca = document.cookie.split(';');

for(var i=0;i < ca.length;i++)

return null;

}

/**

* Gets the value of the specified cookie.

*

* name Name of the desired cookie.

*

* Returns a string containing value of specified cookie,

* or null if cookie does not exist.

*/

function getCookie(name)

{

var dc = document.cookie;

var prefix = name + "=";

var begin = dc.indexOf("; " + prefix);

if (begin == -1)

else

var end = document.cookie.indexOf(";", begin);

if (end == -1)

return unescape(dc.substring(begin + prefix.length, end));

}

/**

* Deletes the specified cookie.

*

* name name of the cookie

* [path] path of the cookie (must be same as path used to create cookie)

* [domain] domain of the cookie (must be same as domain used to create cookie)

*/

function deleteCookie(name, path, domain)

{

if (getCookie(name))

{

document.cookie = name + "=" +

((path) ? "; path=" + path : "") +

((domain) ? "; domain=" + domain : "") +

"; expires=Thu, 01-Jan-70 00:00:01 GMT";

}

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有