common.js---validate检测(只对 有自定义属性的控件进行检测)
/*
func: 公共js
description:
在数据验证的 控件中
对要进行验证的控件
先添加 chname属性 如 chname="用户名" 如果出错 就显示 “用户名 出错”
func: 公共js
description:
在数据验证的 控件中
对要进行验证的控件
先添加 chname属性 如 chname="用户名" 如果出错 就显示 “用户名 出错”
再添加 datatype 或者maxsize或者nullable="no"
其他的具体验证方法 看 verifyinput
*/
其他的具体验证方法 看 verifyinput
*/
/* 检测指定FORM表单所有应被检测的元素(那些具有自定义属性的元素)是否合法,此函数用于表单的 onsubmit="return verifyAll(this)" 事件 */
function verifyAll(myform)
{
var i;
//alert('调用了verifyAll共'+myform.elements.length+'元素');
for (i=0;i<myform.elements.length;i++)
{
/* 非自定义属性的元素不予理睬 */
if (myform.elements[i].chname+""=="undefined") continue;
/* 校验当前元素 */
if (verifyInput(myform.elements[i])==false)
{
myform.elements[i].focus();
return false;
}
}
return true;
//alert('调用了verifyAll共'+myform.elements.length+'元素');
for (i=0;i<myform.elements.length;i++)
{
/* 非自定义属性的元素不予理睬 */
if (myform.elements[i].chname+""=="undefined") continue;
/* 校验当前元素 */
if (verifyInput(myform.elements[i])==false)
{
myform.elements[i].focus();
return false;
}
}
return true;
}
/* 检测指定文本框输入是否合法 */
function verifyInput(input)
{
var image;
var i;
var error = false;
function verifyInput(input)
{
var image;
var i;
var error = false;
/* 长度校验 */
if (strlen(input.value)>parseInt(input.maxsize))
{
alert(input.chname+"超出最大长度"+input.maxsize);
error = true;
}
else
/* 非空校验 */
if (input.nullable=="no"&&isnull(input.value))
{
alert(input.chname+"不能为空");
error = true;
}
else
{
/* 数据类型校验 */
switch(input.datatype)
{
case "number": if (isnumber(input.value)==false)
{
alert(input.chname+"值应该全为数字");
error = true;
}
alert('debug=>>调用了number');
break;
case "email": if (checkemail(input.value)==false && !isnull(input.value))
{
alert(input.chname+"正确格式为 abc@abc.com!");
error = true;
}
break;
case "date": if (IsDate(input.value,'-')==false && !isnull(input.value))
{
alert(input.chname+"日期格式应为2005-08-12 !");
error = true;
}
break;
/* 在这里可以添加多个自定义数据类型的校验判断 */
/* case datatype1: ... ; break; */
/* case datatype2: ... ; break; */
/* ....................................*/
default : break;
}
}
/* 根据有无错误设置或取消警示标志
if (strlen(input.value)>parseInt(input.maxsize))
{
alert(input.chname+"超出最大长度"+input.maxsize);
error = true;
}
else
/* 非空校验 */
if (input.nullable=="no"&&isnull(input.value))
{
alert(input.chname+"不能为空");
error = true;
}
else
{
/* 数据类型校验 */
switch(input.datatype)
{
case "number": if (isnumber(input.value)==false)
{
alert(input.chname+"值应该全为数字");
error = true;
}
alert('debug=>>调用了number');
break;
case "email": if (checkemail(input.value)==false && !isnull(input.value))
{
alert(input.chname+"正确格式为 abc@abc.com!");
error = true;
}
break;
case "date": if (IsDate(input.value,'-')==false && !isnull(input.value))
{
alert(input.chname+"日期格式应为2005-08-12 !");
error = true;
}
break;
/* 在这里可以添加多个自定义数据类型的校验判断 */
/* case datatype1: ... ; break; */
/* case datatype2: ... ; break; */
/* ....................................*/
default : break;
}
}
/* 根据有无错误设置或取消警示标志
在控件旁边 加个 "check_" 前缀 好让 用图片显示
*/
if (error)
{
objcheck= document.getElementById("img_"+input.name);
objcheck.innerHtml="http://www.d5jr.com/images/check_error.gif";
return false;
}
else
{
{
objcheck= document.getElementById("img_"+input.name);
objcheck.innerHtml="http://www.d5jr.com/images/check_error.gif";
return false;
}
else
{
objcheck= document.getElementById("img_"+input.name);
objcheck.innerHtml=" http://www.d5jr.com/images/check_space.gif";
return true;
}
}
objcheck.innerHtml=" http://www.d5jr.com/images/check_space.gif";
return true;
}
}
































































































































