var curCtlIndex = 0;
var arrCtl = new Array();
var oldEvent = new Array();
//设置焦点控件
function SetFocusToFirstControl()
{
var i = 0,j = -1;
for(i=0;i<document.forms[0].elements.length;i++)
{
if(document.forms[0].elements[i].tagName == 'INPUT' || document.forms[0].elements[i].tagName == 'SELECT' || document.forms[0].elements[i].tagName == 'TEXTAREA')
{
if(document.forms[0].elements[i].type != 'submit' && document.forms[0].elements[i].type != 'reset' && document.forms[0].elements[i].type != 'hidden' && document.forms[0].elements[i].type != 'button')
{
if(document.forms[0].elements[i].disabled == 'disabled' || document.forms[0].elements[i].disabled == true)
continue;
if(document.forms[0].elements[i].readOnly)
continue;
if(document.forms[0].elements[i].style.display =="none")
continue;
if(document.forms[0].elements[i].style.width == "0px")
continue;
try
{
j++;
arrCtl[j] = document.forms[0].elements[i];
arrCtl[j].blur();
}
catch(el)
{ }
}
document.forms[0].elements[i].onblur = onblur_handler;
document.forms[0].elements[i].onfocus = onfocus_handler;
}
//alert(document.forms[0].elements[i].type + document.forms[0].elements[i].tagName);
}
//alert(arrCtl.length);
for(i=0;i<arrCtl.length;i++)
{
try
{
arrCtl[i].focus();
break;
}
catch(el)
{}
}
}
/*
设置 回车键
*/
function keyEnter(objSubmit)
{
var i = 0;
if(event.keyCode == 13) // || event.keyCode == 39 || event.keyCode == 40
{
for(i=curCtlIndex+1;i<arrCtl.length;i++)
{
if(curCtlIndex < arrCtl.length - 1)
{
try
{
curCtlIndex++;
arrCtl[curCtlIndex].focus();
return false;
//break;
}
catch(el)
{}
}
else
{
//break;
}
}
if(objSubmit != undefined && objSubmit != '' )
document.getElementById(objSubmit).click();
return false;
}
else if(event.keyCode == 37) // || event.keyCode == 38
{
for(i=curCtlIndex-1;i>=0;i--)
{
try
{
curCtlIndex--;
arrCtl[curCtlIndex].focus();
break;
}
catch(el)
{}
}
return false;
}
}
/*****************************************************************
返回数字,不包含小数点
****************************************************************/
function returnNumber()
{
//alert('21332');
return (event.keyCode>47 && event.keyCode<58);
}
/*****************************************************************
返回数字,包含小数点
****************************************************************/
function returnNumberDot()
{
return ((event.keyCode>47 && event.keyCode<58) || event.keyCode==46);
}
/*****************************************************************
返回数字,包含包含负数
****************************************************************/
function returnNumberDot1()
{
return ((event.keyCode>47 && event.keyCode<58) || event.keyCode==46||event.keyCode==45);
}
/*****************************************************************
检查数字,包含小数点
****************************************************************/
function CheckNumberDot(value)
{
if(value == '')
return true;
if(value.indexOf('.') != value.lastIndexOf('.'))
return false;
return true;
}
/*****************************************************************
检查日期,返回值:0:不是日期 1:是日期
****************************************************************/
function CheckDate(datestr)
{
if(datestr == "")
return 1;
var lthdatestr
if (datestr != "")
lthdatestr= datestr.length ;
else
lthdatestr=0;
var tmpy="";
var tmpm="";
var tmpd="";
var status;
status=0;
if ( lthdatestr== 0)
return 0
for (i=0;i<lthdatestr;i++)
{
if (datestr.charAt(i)== '-')
{
status++;
}
if (status>2)
{
return 0;
}
if ((status==0) && (datestr.charAt(i)!='-'))
{
tmpy=tmpy+datestr.charAt(i)
}
if ((status==1) && (datestr.charAt(i)!='-'))
{
tmpm=tmpm+datestr.charAt(i)
}
if ((status==2) && (datestr.charAt(i)!='-'))
{
tmpd=tmpd+datestr.charAt(i)
}
}
year=new String (tmpy);
month=new String (tmpm);
day=new String (tmpd)
if ((tmpy.length!=4) || (tmpm.length>2) || (tmpd.length>2))
{
return 0;
}
if (!((1<=month) && (12>=month) && (31>=day) && (1<=day)) )
{
return 0;
}
if (!((year % 4)==0) && (month==2) && (day==29))
{
return 0;
}
if ((month<=7) && ((month % 2)==0) && (day>=31))
{
return 0;
}
if ((month>=8) && ((month % 2)==1) && (day>=31))
{
return 0;
}
if ((month==2) && (day==30))
{
return 0;
}
return 1;
}
/*****************************************************************
检查DropDown选中项值 id--DropDownList控件ID value--选中项值 mistake-输出显示内容
****************************************************************/
function CheckDDL(id,value,mistake)
{
for(i=0;i<document.getElementById(id).options.length;i++)
{
if(document.getElementById(id).options[i].selected ==true&&document.getElementById(id).options[i].text==value )
{
alert(mistake);
return false;
break;
}
}
return true;
}
/*****************************************************************
给DropDown副值 id--DropDownList控件ID value--选中项值
****************************************************************/
//function CheckDropDown(,)
function setDropDown(id,value)
{
for(i=0;i<document.getElementById(id).options.length;i++)
{
if(document.getElementById(id).options[i].text == value)
{
document.getElementById(id).options[i].selected = true;
break;
}
}
}
二.分类
/*****************************************************************
****************************************************************/
function onblur_handler()
{
//
if(this.id.indexOf('txt1')>=0 || this.id.indexOf('txt2')>=0)
//
this.style.backgroundColor="#d4d0c8";
//
else
//
this.style.backgroundColor="LightBlue";
this.style.backgroundColor="White";
}
function onfocus_handler()
{
for(i=0;i<arrCtl.length;i++)
{
if(this.id == '')
{
if(this.name == arrCtl[i].name)
{
curCtlIndex = i;
break;
}
}
else
{
if(this.id == arrCtl[i].id)
{
curCtlIndex = i;
break;
}
}
}
this.style.backgroundColor="yellow";
return true;
}
/* 中文值检测--检验字符串中是否含有中文字符,若含有返回true,否则返回false*/
function hasChinese(str)
{
if(str.length == 0)
return false;
for(i = 0; i < str.length; i++)
{
if(str.charCodeAt(i) > 128)//128或者255?
return true;
}
return false;
}
/* 数值检测--检验字符串中是否全部是数值,若是返回true,否则返回false*/
function isNumber(str)
{
if(str.length == 0)
return false;
for(i = 0; i < str.length; i++)
{
if(str.charAt(i) < "0" || str.charAt(i) > "9")
return false;
}
return true;
}
/* 电话/手机号码检测--检验是否为有效的电话或手机号码,若有效返回true,否则返回false*/
function isTelNumber(str)
{
var ValidChar = "1234567890-"; //可以自己增加可输入值
var c;
if(str.charAt(0) == '-')
return false;
if(str.charAt(str.length - 1) == '-')
return false;
for(var i = 0; i < str.length; i++)
{
c = str.charAt(i);
if(ValidChar.indexOf(c) < 0)
return false;
}
return true;
}
/* 特殊字符检测--检验字符串中是否包含以下特殊字符,若含有返回true,否则返回false*/
var ErrChar = "!@#$%^&*()_+|-=\\~`;'[]{}\"':;,./<>?~!@#¥%^&×()……+|-=、〔〕{}:“;‘《》?,。、";
function hasSpecialCharacters(str)
{
for(var i=0; i < str.length; i++)
{
if(ErrChar.indexOf(str.charAt(i)) > -1)
return true;
}
}
/* 控件最大长度检测--检验该控件填写的内容是否已经超过规定的最大长度*/
/* obj:传入的控件(一般为TextBox), maxLength:规定的最大长度(数据库能存放的最大字符数). 超出返回true,否则返回false*/
function isBeyondMaxLength(obj, maxLength)
{
var controlValue = obj.value;
var controlValueLength = controlValue.replace(/[^\x00-\xff]/g,'**').length
/*或者使用
var len = 0;
for (var i = 0; i < controlValue.length; i++)
{
if (controlValue.charCodeAt(i) > 255) len += 2;
else len ++;
}
var controlValueLength = len;*/
if(convtrolValueLength > maxLength)
return true;
else
return false;
}