📄 validate.js
字号:
//一、用法简介:
//表单验证函数放在了functions.js文件里了,在你所需要做验证的网页文件里,包含该脚本文件。一般语法为:
//<script type="text/javascript" src="./functions.js">
//对于焦点失去验证,为表单控件的onBlur事件绑定相应的验证函数,用法如下:
//整型 checkNumber()
//浮点型 checkNumber()
//字符串 checkString()
//日期 checkDate()
//邮箱 checkEmail()
//示例 onBlur="checkNumber()"
//对于表单提交验证,在表单提交前进行判断,用法如下:
//if(checkForm('表单名称'))
//{
// 表单名称.submit();
// return true;
//}
//else
//{
// return false;
//}
//也可以绑定表单onSubmit事件,用法如下:
//onSubmit="return checkForm('表单名称')"
//二、类型定义:
//1、整型(int)
//定义:
// valueType="int"
//属性:
// objName 对象名称(字符串)
// mustInput 必输项(true/false)
// minInput 最小值(数字)
// maxInput 最大值(数字)
//举例:
// <input type="text" name="test" valueType="int" objName="总载重吨" mustInput="true" maxInput="10000">
//2、浮点型(float)
//定义:
// valueType="float"
//属性:
// objName 对象名称(字符串)
// mustInput 必输项(true/false)
// minInput 最小值(数字)
// maxInput 最大值(数字)
// decimalLen小数位数(数字)
//举例:
// <input type="text" name="test" valueType="float" objName="运价" mustInput="true" maxInput="10000.50" decimalLen="2">
//3、字符串(string)
//定义:
// valueType="string"
//属性:
// objName 对象名称(字符串)
// mustInput 必输项(true/false)
// stringLen 字符串长度(数字)
//举例:
// <input type="text" name="test" valueType="string" objName="英文船名" mustInput="true" stringLen="100">
//4、日期(date)
//定义:
// valueType="date"
//属性:
// objName 对象名称(字符串)
// mustInput 必输项(true/false)
//举例:
// <input type="text" name="test" valueType="date" objName="开始日期" mustInput="true">
//备注:
// 日期现在只能校验的格式为(yyyy-mm-dd)
//5、邮箱(email)
//定义:
// valueType="email"
//属性:
// objName 对象名称(字符串)
// mustInput 必输项(true/false)
//举例:
// <input type="text" name="test" valueType="email" objName="邮箱" mustInput="true">
//6、单选(radio)
//定义:
// valueType="radio"
//属性:
// objName 对象名称(字符串)
// mustSelect 必输项(true/false)
//举例:
// <input type="radio" name="test" valueType="radio" objName="租船方式" mustSelect="true">
//备注:
// 对于同一组单选按钮,只需要定义第一个即可。
//7、复选(checkbox)
//定义:
// valueType="checkbox"
//属性:
// objName 对象名称(字符串)
// minSelect 最小选择数(数字)
// maxSelect 最大选择数(数字)
//举例:
// <input type="checkbox" name="test" valueType="checkbox" objName="爱好" minSelect="2" maxSelect="5">
//备注:
// 对于同一组复选按钮,只需要定义第一个即可。
//8、下拉列表框(select)
//定义:
// valueType="select"
//属性:
// objName 对象名称(字符串)
// mustSelect 必输项(true/false)
//举例:
// <select name="test" valueType="select" objName="租船方式" mustSelect="true">
//9、列表框(list)
//定义:
// valueType="list"
//属性:
// objName 对象名称(字符串)
// minSelect 最小选择数(数字)
// maxSelect 最大选择数(数字)
//举例:
// <select name="test" valueType="list" objName="爱好" minSelect="2" maxSelect="5">
/*****************functions.js**********************/
/***检查表单所有元素***/
function checkForm(formName)
{
var oForm=document.all(formName);
var eles = oForm.elements;
//遍历所有表元素
for(var i=0;i<eles.length;i++)
{
//是否需要验证
var sType=eles[i].valueType;
if(sType)
{
if(eles[i].mustInput!=null && eles[i].mustInput=="true"
{
if(trim(eles[i].value)==""
{
if(eles[i].objName!=null)
{
alert(eles[i].objName+"不可以为空";
}
else
{
alert("该文本框为必输字段";
}
eles[i].focus();
event.returnValue=false;
return false;
}
}
switch(sType)
{
//整数
case "int":
if(!validInt(eles[i]))
{
event.returnValue=false;
return false;
}
break;
//小数
case "float":
if(!validFloat(eles[i]))
{
event.returnValue=false;
return false;
}
break;
//字符串
case "string":
if(!validString(eles[i]))
{
event.returnValue=false;
return false;
}
break;
//日期
case "date":
if(!validDate(eles[i]))
{
event.returnValue=false;
return false;
}
break;
//邮件
case "email":
if(!validEmail(eles[i]))
{
event.returnValue=false;
return false;
}
break;
//单选按钮
case "radio":
if(!validRadio(eles[i]))
{
event.returnValue=false;
return false;
}
break;
//复选按钮
case "checkbox":
if(!validBox(eles[i]))
{
event.returnValue=false;
return false;
}
break;
//下拉列表框
case "select":
if(!validSelect(eles[i]))
{
event.returnValue=false;
return false;
}
break;
//列表框
case "list":
if(!validList(eles[i]))
{
event.returnValue=false;
return false;
}
break;
}
}
}
event.returnValue=true;
return true;
}
/***检查是否为数字***/
function checkNumber()
{
var ele=event.srcElement;
if(ele.valueType!=null)
{
if(ele.mustInput!=null && ele.mustInput=="true"
{
if(trim(ele.value)==""
{
if(ele.objName!=null)
{
alert(ele.objName+"不可以为空";
}
else
{
alert("该文本框为必输字段";
}
ele.focus();
return false;
}
}
if(ele.valueType=="int"
checkInt(ele);
else if(ele.valueType=="float"
checkFloat(ele);
else
;
}
return true;
}
/***检查是否为整数***/
function checkInt(ele)
{
if(!isInt(ele.value))
{
alert("请输入有效整数";
ele.focus();
return false;
}
else
{
if(ele.maxInput!=null && !isNaN(ele.maxInput))
if(parseInt(ele.maxInput)<parseInt(ele.value))
{
alert("您输入的"+ convertNullToSpace(ele.objName)+"值应该小于"+ele.maxInput);
ele.focus();
return false;
}
if(ele.minInput!=null && !isNaN(ele.minInput))
if(parseInt(ele.minInput)>parseInt(ele.value))
{
alert("您输入的"+ convertNullToSpace(ele.objName)+"值应该大于"+ele.minInput);
ele.focus();
return false;
}
}
return true;
}
/***检查是否为小数***/
function checkFloat(ele)
{
if(isNaN(ele.value))
{
alert("请输入有效数字";
ele.focus();
return false;
}
else
{
if(ele.decimalLen!=null && !checkDecimal(ele.value,ele.decimalLen))
{
alert("您输入的"+convertNullToSpace(ele.objName)+"值小数位最多为"+ele.decimalLen);
ele.focus();
return false;
}
if(ele.maxInput!=null && !isNaN(ele.maxInput))
if(parseInt(ele.maxInput)<parseInt(ele.value))
{
alert("您输入的"+ convertNullToSpace(ele.objName)+"值应该小于等于"+ele.maxInput);
ele.focus();
return false;
}
if(ele.minInput!=null && !isNaN(ele.minInput))
if(parseInt(ele.minInput)>parseInt(ele.value))
{
alert("您输入的"+ convertNullToSpace(ele.objName)+"值应该大于等于"+ele.minInput);
ele.focus();
return false;
}
}
return true;
}
/***检查是否为字符串***/
function checkString()
{
var ele=event.srcElement;
if(ele.valueType!=null)
{
if(ele.mustInput!=null && ele.mustInput=="true"
{
if(trim(ele.value)==""
{
if(ele.objName!=null)
{
alert(ele.objName+"不可以为空";
}
else
{
alert("该文本框为必输字段";
}
ele.focus();
return false;
}
}
if(ele.stringLen!=null && !isNaN(ele.stringLen))
{
var value=new String(ele.value);
if(value.length>parseInt(ele.stringLen))
{
alert("您输入的"+convertNullToSpace(ele.objName)+"最大长度为"+ele.stringLen);
ele.focus();
return false;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -