📄 checkdata.js
字号:
/*******************************************************************************
** 函数名称:IsEmail
** 功 能:是否为合格的E-mail地址
* type 为0,不检查 ,type 为1,检查
** 引用函数:无
** 返 回 值:true false
*******************************************************************************/
function IsEmail(concole,type)
{
var p1, p2;
var s=concole.value;
if ((s==null) || (s.length<=0)){
if(type=='1'){
//必须填写
return false;
}
}else{
if ((s==null) || (s.length<=5)){
return false;
}
p1 = s.indexOf("@");
if (p1==-1)
return false;
if (s.indexOf("@", p1+1)!=-1)
return false;
p2 = s.indexOf(".", p1+1);
if (p2==-1)
return false;
if ( (p1<=0) || ((p2-p1)<=1) || (p2>=s.length-1) )
return false;
}
return true;
}
/**
*
*
*/
function IsInArray(strInput,array){
for(var j=0;j<array.length;j++){
if(array[j]==strInput){
return true;
}
}
return false;
}
function checkPhone(strInput,msg){
var array = new Array("(",")","-");
for (var i = 0; i < strInput.length; i++){
if (IsDigit(strInput.charAt(i))==false){
if(!IsInArray(strInput.charAt(i),array)){
//alert(msg+"存在非法字符,只能包含数字和'('、')'和'-'");
alert(msg);
return false;
}
}
}
return true;
}
function chkNum(concole,length,msg){
if(concole.value.length>length){
alert(msg+"长度大于"+length);
return false;
}
if(concole.value!=""){
if(isNaN(concole.value)){
alert(msg+"不是数字!");
//concole.focus();
return false;
}
}else{
alert("请填写"+msg+"!");
//concole.focus();
return false;
}
return true;
}
/**
* type 为1时必须填写。
* 为0时可以不用填
*
**/
function chkLen(concole,type,length,msg){
if(concole.value!=""){
if(concole.value.length>length){
alert(msg+"长度大于"+length);
return false;
}
}else{
if(type=='1'){
alert("请填写"+msg+"!");
concole.focus();
return false;
}
}
return true;
}
/*
function chkLen(concole,length,msg){
if(concole.value!=""){
if(concole.value.length>length){
alert(msg+"长度大于"+length);
return false;
}
}else{
alert("请填写"+msg+"!");
concole.focus();
return false;
}
return true;
}
*/
/*******************************************************************************
** 函数名称:IsFloat
** 功 能:是否为合格的浮点数
** 引用函数:IsDigit
** 返 回 值:true false
*******************************************************************************/
function IsFloat(s)
{
var i, j;
if ((s==null) || (s.length<=0))
return false;
if (s.charAt(0)=='-')
j = 1;
else
j = 0;
for(i=j; i<s.length; i++)
if (IsDigit(s.charAt(i))==false)
{
if ((j<2) && (s.charAt(i)=="."))
j = 2;
else
return false;
}
return true;
}
/*******************************************************************************
** 函数名称:IsDigit
** 功 能:是否为单一数字
** 引用函数:无
** 返 回 值:true false
*******************************************************************************/
function IsDigit(s)
{
var AllDigits = '0123456789';
if ((s==null) || (s.length!=1))
return false;
else if (AllDigits.indexOf(s)==-1)
return false;
else
return true;
}
/*******************************************************************************
** 函数名称:IsNumber
** 功 能:是否为合格的正整数
** 引用函数:IsDigit
** 返 回 值:true false
*******************************************************************************/
function IsNumber(s)
{
if ((s==null) || (s.length<=0))
return false;
else
for(var i=0; i<s.length; i++)
if (IsDigit(s.charAt(i))==false)
return false;
return true;
}
/*******************************************************************************
** 函数名称:IsDate
** 功 能:是否为合格的日期型(不允许输入参数为空字符串)
** 说 明:输入参数为空字符串时返回false
** 引用函数:IsNumber
** 返 回 值:true false
*******************************************************************************/
function IsDate(s)
{
var Separator = '-';
var SepCount = 0;
var DaysInMonth;
var y, m, d;
var l;
var p1, p2;
if (s==null)
return false;
l = s.length;
if ((l<8) || (l>10))
return false;
p1 = s.indexOf(Separator);
if (p1==-1)
return false;
p2 = s.indexOf(Separator, p1+1);
if (p2==-1)
return false;
if (s.indexOf(Separator, p2+1)!=-1)
return false;
y = s.substring(0, p1);
m = s.substring(p1+1, p2);
d = s.substring(p2+1);
y = GetPureNumber(y);
m = GetPureNumber(m);
d = GetPureNumber(d);
if (IsNumber(y)==false || IsNumber(m)==false || IsNumber(d)==false)
return false;
if (y.length!=4)
return false;
if ((parseInt(m)<1) || (parseInt(m)>12))
return false;
if (m==4||m==6||m==9||m==11)
DaysInMonth = 30;
else if (m==2)
{
if (y%4>0)
DaysInMonth = 28;
else if (y%100==0 && y%400>0)
DaysInMonth = 28;
else
DaysInMonth = 29;
}
else
DaysInMonth = 31;
if ((parseInt(d)<1) || (parseInt(d)>DaysInMonth))
return false;
return true;
}
/*******************************************************************************
** 函数名称:GetPureNumber
** 功 能:去除正整数字符串的前置0
** 引用函数:IsNumber
** 返 回 值:去除前置0的正整数字符串
*******************************************************************************/
function GetPureNumber(s)
{
var l=0, i;
var ss;
if ((s==null) || (s.length<=0))
return "";
ss = new String(s);
if (!IsNumber(ss))
return ss;
l = ss.length;
for(i=0; i<l; i++)
{
if (ss.charAt(i)!='0')
break;
}
return (ss.substring(i));
}
/*******************************************************************************
** 函数名称:BetweenFloats
** 功 能:浮点数是否在范围之内
** 参 数:
** v:要检查的浮点数 s1:浮点数范围下界 s2:浮点数范围上界
** 说 明:参数是否为合法浮点型需要自行判断
** 引用函数:IsFloat
** 返 回 值:true false
*******************************************************************************/
function BetweenFloats(v, l, h)
{
var vv, vl, vh;
if (IsFloat(v)==false || IsFloat(l)==false || IsFloat(h)==false)
return (false);
vv = parseFloat(v);
vl = parseFloat(l);
vh = parseFloat(h);
if ((vl>vv) || (vv>vh))
return false;
else
return true;
}
/*******************************************************************************
** 函数名称:chkDate
** 功 能:检查是否为日期类型
** 参 数:
** type="1" 不能为空 type="0" 可以为空
** concole:要检查的文本框
** 说 明:参数是否为合法浮点型需要自行判断
** 引用函数:
** 返 回 值:true false
*******************************************************************************/
function chkDate(concole,type,msg){
if(concole.value!=""){
if(IsDate(concole.value)==false){
alert(msg+"不是日期类型,请按 YYYY-MM-DD 格式录入日期!");
concole.focus();
return false;
}
}else{
alert("请填写"+msg+"!");
concole.focus();
return false;
}
return true;
}
/*******************************************************************************
** 函数名称:chkFloat
** 功 能:检查浮点型数的格式和大小
** 参 数:
** type="1" 不能为空 type="2" 可以为空 len1 小数点前的位数
** concole:要检查的浮点数
** 说 明:参数是否为合法浮点型需要自行判断
** 引用函数:IsFloat
** 返 回 值:true false
*******************************************************************************/
function chkFloat(concole,type,len1,len2,msg){
s=concole.value;
if ((s==null) || (s.length<=0)){
if(type=="1"){
alert(msg+"不能为空!");
concole.focus();
return false;
}
}else{ //else begin
if(IsFloat(s)==false){
alert(msg+"不是浮点型数据!");
concole.focus();
return false;
}else{
p1 = s.indexOf(".");
if(p1<0){
if(s.length>parseInt(len1)){
alert(msg+"长度大于"+len1+"!");
concole.focus();
return false;
}
}else {
bNum= s.substring(0, p1);
if(parseInt(len1)<bNum.length){
alert(msg+"浮点型数据精度超过要求!");
concole.focus();
return false;
}
}
//fNum=s.substring(p1+1,s.length);
//alert(fNum);
return true;
}
}//else end
}
function trim(s){
var begin ,end;
var i;
if(s == null)
return null;
if(s.length = 0)
return null;
begin = 0;
end = s.length-1;
while(begin < s.length && s.charAt(begin) == ' '){
begin++;
}
while(end >= 0 && s.charAt(end) == ' '){
end--;
}
if(begin <= end)
return s.substring(begin,end);
else
return null;
}
function _isMail(mail){
var regExp = /^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
return (mail.match(regExp) != null);
}
function isMail(mail){
var sepRegExp = /\s*[,|;]\s*/g;
var mails = mail.split(sepRegExp);
if(mails == null){
return false;
}
for(var i = 0; i < mails.length; i++){
if(!_isMail(mails[i])){
return false;
}
}
return true;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -