javascript常用到的一些方法
function
openBigWin(temUrl)
{
var Wid;
var Hei;
var Type;
Wid = 700 ;
Hei = 500 ;
Type = " _blank " ;
window.open (temUrl,Type, " scrollbars=yes,resizable=yes,toolbar=1,top=10,left=130,width= " + Wid + " ,height= " + Hei );
return true ;
}
function openMiddleWin(temUrl)
{
var Wid = 500 ;
var Hei = 400 ;
var left = (screen.width - Wid) / 2 ;
var top = (screen.height - Hei) / 2 ;
if (top > 100 )
top = 100 ;
var newWin = window.open(temUrl, " _blank " , " scrollbars=yes,resizable=yes,top= " + top + " ,toolbar=0,menubar=1,left= " + left + " ,width= " + Wid + " ,height= " + Hei );
return newWin;
}
function openWin(temUrl,Type,Wid,Hei)
{
window.open (temUrl,Type, " scrollbars=no,resizable=yes,top=10,toolbar=0,left=130,width= " + Wid + " ,height= " + Hei );
return true ;
}
function openNewWin(temUrl,left,top,Wid,Hei)
{
left = (screen.width - Wid) / 2 ;
top = (screen.height - Hei) / 2 ;
if (top > 100 )
top = 100 ;
var newWin = window.open(temUrl, " _blank " , " scrollbars=yes,resizable=yes,top= " + top + " ,toolbar=0,menubar=1,left= " + left + " ,width= " + Wid + " ,height= " + Hei );
return newWin;
}
function openNewWin2(winName,temUrl,Wid,Hei)
{
var left;
var top;
left = (screen.width - Wid) / 2 ;
top = (screen.height - Hei) / 2 ;
if (top > 100 )
top = 100 ;
var newWin = window.open(temUrl,winName, " scrollbars=yes,resizable=yes,top= " + top + " ,toolbar=0,menubar=1,left= " + left + " ,width= " + Wid + " ,height= " + Hei );
newWin.focus();
return newWin;
}
function openWin(temUrl,Type,Wid,Hei)
{
Wid = 700 ;
Hei = 500 ;
Type = " _blank " ;
window.open (temUrl,Type, " scrollbars=yes,resizable=yes,top=10,toolbar=1,left=130,width= " + Wid + " ,height= " + Hei );
return true ;
}
{
var Wid;
var Hei;
var Type;
Wid = 700 ;
Hei = 500 ;
Type = " _blank " ;
window.open (temUrl,Type, " scrollbars=yes,resizable=yes,toolbar=1,top=10,left=130,width= " + Wid + " ,height= " + Hei );
return true ;
}
function openMiddleWin(temUrl)
{
var Wid = 500 ;
var Hei = 400 ;
var left = (screen.width - Wid) / 2 ;
var top = (screen.height - Hei) / 2 ;
if (top > 100 )
top = 100 ;
var newWin = window.open(temUrl, " _blank " , " scrollbars=yes,resizable=yes,top= " + top + " ,toolbar=0,menubar=1,left= " + left + " ,width= " + Wid + " ,height= " + Hei );
return newWin;
}
function openWin(temUrl,Type,Wid,Hei)
{
window.open (temUrl,Type, " scrollbars=no,resizable=yes,top=10,toolbar=0,left=130,width= " + Wid + " ,height= " + Hei );
return true ;
}
function openNewWin(temUrl,left,top,Wid,Hei)
{
left = (screen.width - Wid) / 2 ;
top = (screen.height - Hei) / 2 ;
if (top > 100 )
top = 100 ;
var newWin = window.open(temUrl, " _blank " , " scrollbars=yes,resizable=yes,top= " + top + " ,toolbar=0,menubar=1,left= " + left + " ,width= " + Wid + " ,height= " + Hei );
return newWin;
}
function openNewWin2(winName,temUrl,Wid,Hei)
{
var left;
var top;
left = (screen.width - Wid) / 2 ;
top = (screen.height - Hei) / 2 ;
if (top > 100 )
top = 100 ;
var newWin = window.open(temUrl,winName, " scrollbars=yes,resizable=yes,top= " + top + " ,toolbar=0,menubar=1,left= " + left + " ,width= " + Wid + " ,height= " + Hei );
newWin.focus();
return newWin;
}
function openWin(temUrl,Type,Wid,Hei)
{
Wid = 700 ;
Hei = 500 ;
Type = " _blank " ;
window.open (temUrl,Type, " scrollbars=yes,resizable=yes,top=10,toolbar=1,left=130,width= " + Wid + " ,height= " + Hei );
return true ;
}
function
isAlpha(s)
{
for ( var i = 0 ; i < s.length; i ++ ) {
var Char = s.charAt(i);
if ((Char < " a " || Char > " z " ) && (Char < " A " || Char > " Z " ))
return false ;
}
return true ;
}
function isNumeric(p) {
if (p == "" )
return false ;
var l = p.length;
var count = 0 ;
for ( var i = 0 ; i < l; i ++ ) {
var digit = p.charAt(i);
if (digit == " . " ) {
++ count;
if (count > 1 ) return false ;
} else if (digit < " 0 " || digit > " 9 " )
return false ;
}
return true ;
}
function isEmail(email) {
invalidChars = " /;,:{}[]|*%$#!()`<>? " ;
if (email == "" ) {
return false ;
}
for (i = 0 ; i < invalidChars.length; i ++ ) {
badChar = invalidChars.charAt(i) ;
if (email.indexOf(badChar, 0 ) > - 1 ) {
return false ;
}
}
atPos = email.indexOf( " @ " , 1 );
if (atPos == - 1 ) {
return false ;
}
if (email.indexOf( " @ " , atPos + 1 ) != - 1 ) {
return false ;
}
periodPos = email.indexOf( " . " ,atPos)
if (periodPos == - 1 ) {
return false ;
}
if ( atPos + 2 > periodPos) {
return false ;
}
if ( periodPos + 3 > email.length) {
return false ;
}
return true ;
}
// pageNO :this pageNO
// nextPage: first,last,next,up,number(eg:777777)
function goPage(searchForm,pageNO,pageCounter,nextPage) {
var url;
var customPageNO;
// alert("hello");
url = searchForm.action + " &pageNO= " ;
if (nextPage == " first " ) {
if (pageNO == 1 ) {
alert( " 已经是第一页! " );
return false ;
} else {
pageNO = 1 ;
url = url + pageNO;
searchForm.action = url;
searchForm.submit();
}
} else if (nextPage == " up " ) {
if (pageNO == 1 ) {
alert( " 已经是第一页! " );
return false ;
} else {
pageNO = pageNO - 1 ;
url = url + pageNO;
searchForm.action = url;
searchForm.submit();
}
} else if (nextPage == " next " ) {
if (pageNO == pageCounter) {
alert( " 已经是最后一页 " );
return false ;
} else {
pageNO = parseInt(pageNO) + 1 + "" ;
url = url + pageNO;
searchForm.action = url;
searchForm.submit();
}
} else if (nextPage == " last " ) {
// alert("pageNO:" +pageNO + " pageCounter:"+pageCounter);
if (pageNO == pageCounter) {
alert( " 已经是最后一页 " );
return false ;
} else {
pageNO = pageCounter
url = url + pageNO;
searchForm.action = url;
searchForm.submit();
}
} else if (isNumeric(nextPage) ) {
if (pageNO == nextPage) {
alert( " 已经是第 " + pageNO + " 页! " );
return false ;
}
pageNO = nextPage;
if (pageNO >= 1 && pageNO <= pageCounter) {
url = url + pageNO;
searchForm.action = url;
searchForm.submit();
} else {
alert( " 页面超出了范围! " );
return false ;
}
}
return false ;
}
/**/ /*
文件名: check_data.js
功 能: 主要进行数据校验
更 新: 金永俊 2004年4月16日
戴 嘉 2004.05.11
*/
// -------------------------------
// 函数名:isNull(i_field,i_value)
// 功能介绍:检查输入是否为非空
// 参数说明:数据项,输入的对应值
// 返回值 :0-非空,1-为空
// -------------------------------
function isNull(i_field,i_value)
{
if (i_value == null || jstrim(i_value) == "" )
{
return 1 ;
}
else
{
alert( " ' " + i_field + " ' 要求为空! " );
return 0 ;
}
}
// -------------------------------
// 函数名:notNull(i_field,i_value)
// 功能介绍:检查输入是否为非空
// 参数说明:数据项,输入的对应值
// 返回值 :1-非空,0-为空
// -------------------------------
function notNull(i_field,i_value)
{
if (i_value == null || jstrim(i_value) == "" )
{
alert( " ' " + i_field + " ' 不可为空! " );
return 0 ;
}
return 1 ;
}
// -------------------------------
// 函数名:isNum(i_field,i_value)
// 功能介绍:检查输入字符串是否为数字
// 参数说明:数据项,输入的对应值
// 返回值 :1-是数字,0-非数字
// -------------------------------
function isNum(i_field,i_value)
{
if (notNull(i_field,i_value) == 0 )
{ return 0 ;
}
re = new RegExp( " [^0-9] " );
var s;
if (s = i_value.match(re))
{
alert( " ' " + i_field + " ' 中含有非法字符 ' " + s + " ' ! " );
return 0 ;
}
return 1 ;
}
// -------------------------------
// 函数名:isGreatNum(i_field,i_value,i_value1)
// 功能介绍:检查输入字符串是否是数字并且大于i_value1
// 参数说明:数据项,输入的对应值,比较数值
// 返回值 :1-给定的i_value为数字且大于i_value1,
// 0-非数字或者i_value小于等于i_value1
//
// 戴嘉 2004.05.11
// -------------------------------
function isGreatNum(i_field,i_value,i_value1)
{
// 校验输入的是否为数值
if (isNum(i_field,i_value) == 0 )
return 0 ;
else
{
if (i_value <= i_value1)
return 0 ;
}
return 1 ;
}
// -------------------------------
// 函数名:isSmallNum(i_field,i_value,i_value1)
// 功能介绍:检查输入字符串是否是数字并且小于i_value1
// 参数说明:数据项,输入的对应值,比较数值
// 返回值 :1-给定的i_value为数字且小于i_value1,
// 0-非数字或者i_value大于等于i_value1
//
// 戴嘉 2004.05.11
// -------------------------------
function isSmallNum(i_field,i_value,i_value1)
{
// 校验输入的是否为数值
if (isNum(i_field,i_value) == 0 )
return 0 ;
else
{
if (i_value >= i_value1)
return 0 ;
}
return 1 ;
}
// -------------------------------
// 函数名:isDate(i_field,thedate)
// 功能介绍:校验字符串是否为日期格式
// 参数说明:数据项,输入的字符串
// 返回值 :0-不是,1--是
// -------------------------------
function isDate(i_field,thedate)
{
if ( ! (thedate.length == 8 || thedate.length == 10 ))
{ alert( " ' " + i_field + " '日期格式不对,\n要求为yyyymmdd或yyyy-mm-dd! " );
return 0 ;
}
if (thedate.length == 8 )
{
thedate = thedate.substr( 0 , 4 ) + " - " + thedate.substr( 4 , 2 ) + " - " + thedate.substr( 6 , 2 );
}
var reg = /^ (\d { 1 , 4 } )( - )(\d { 1 , 2 } )\ 2 (\d { 1 , 2 } )$ / ;
var r = thedate.match(reg);
if (r == null )
{
alert( " 请输入正确的' " + i_field + " ' ! " );
return 0 ;
}
var d = new Date(r[ 1 ],r[ 3 ] - 1 ,r[ 4 ]);
var newStr = d.getFullYear() + r[ 2 ] + (d.getMonth() + 1 ) + r[ 2 ] + d.getDate()
var newDate = r[ 1 ] + r[ 2 ] + (r[ 3 ] - 0 ) + r[ 2 ] + (r[ 4 ] - 0 )
// alert("----------r:"+r+" d:"+d+" newStr:"+newStr+" newDate:"+newDate);
if (newStr == newDate)
{
return 1 ;
}
alert( " ' " + i_field + " '日期格式不对,\n要求为yyyymmdd或yyyy-mm-dd! " );
return 0 ;
}
// -------------------------------
// 函数名:changeDate(thedate)
// 功能介绍:日期yyyymmdd转换成yyyy-mm-dd格式
// 参数说明:输入日期
// 返回值 :0-不是,1--是
// -------------------------------
function changeDate(thedate)
{
if (thedate.length == 8 )
{
thedate = thedate.substr( 0 , 4 ) + " - " + thedate.substr( 4 , 2 ) + " - " + thedate.substr( 6 , 2 );
}
return thedate;
}
// -------------------------------
// 函数名:isLength(i_field,i_length,i_value)
// 功能介绍:检查输入值是否为指定长度
// 参数说明:数据项,要求长度,值
// 返回值 :1-是指定长度,0-不是
// -------------------------------
function isLength(i_field,i_length,i_value)
{ // alert("---长度要求:"+i_length+" "+i_value.length);
if ( ! (i_value.length == i_length))
{
alert( " ' " + i_field + " ' 的长度要求为' " + i_length + " '! " );
return 0 ;
}
return 1 ;
}
// -------------------------------
// 函数名:dyLength(i_field,i_length,i_value)
// 功能介绍:检查输入值是否达到指定长度以上
// 参数说明:数据项,要求长度,值
// 返回值 :1-符合,0-不是
// -------------------------------
function dyLength(i_field,i_length,i_value)
{ // alert("---长度要求:"+i_length+" "+i_value.length);
if (i_value.length < i_length)
{
alert( " ' " + i_field + " ' 的长度至少为 ' " + i_length + " '! " );
return 0 ;
}
return 1 ;
}
// -------------------------------
// 函数名:xyLength(i_field,i_length,i_value)
// 功能介绍:检查输入值不要超过指定长度
// 参数说明:数据项,要求长度,值
// 返回值 :1-符合,0-不是
// -------------------------------
function xyLength(i_field,i_length,i_value)
{ // alert("---长度要求:"+i_length+" "+i_value.length);
if (i_value.length > i_length)
{
alert( " ' " + i_field + " ' 的长度最长为 ' " + i_length + " ' ! " );
return 0 ;
}
return 1 ;
}
// -------------------------------
// 函数名:check_hm(标签,长度,i_value)
// 参数说明:标签,长度,值。
// 功能介绍:检查输入号码字符串长度是否满足;是否全数字。
// 返回值 :1-是,false-不是
// -------------------------------
function check_hm(i_field,i_length,i_value)
{
if (isLength(i_field,i_length,i_value) == 0 )
{
return 0 ;
}
if (isNum(i_field,i_value) == 0 )
{
return 0 ;
}
return 1 ;
}
// -------------------------------
// 函数名:check_yzbm(i_value)
// 参数说明:邮政编码值。
// 功能介绍:检查邮政编码是否是6位长数字。
// 返回值 :1-是,false-不是
// -------------------------------
function check_yzbm(i_value)
{
if (isLength( " 邮政编码 " , " 6 " ,i_value) == 0 )
{
return 0 ;
}
if (isNum( " 邮政编码 " ,i_value) == 0 )
{
return 0 ;
}
return 1 ;
} // -------------------------------
// 函数名:check_zjhm(zjmc,obj)
// 参数说明:证件名称,证件号码。
// 功能介绍:检查身份证号码合法性。
// 对身份证检查是否为全数字;出生日期格式是否正确;是否<=18,<=70;校验码检查
// 返回值 :1-是,0-不
// -------------------------------
function check_zjhm(zjmc,zjhm)
{
var birthday = "" ;
var zjhm1 = "" ;
var zjhm2 = "" ;
var s = "" ;
if (notNull( " 证件号码 " ,zjhm) == 0 ) { return 0 ; }
if (zjmc == " A " ) // 身份证号码
{
if ( ! (zjhm.length == 15 || zjhm.length == 18 ) )
{
alert( " 身份证长度不对,请检查! " ) ;
return 0 ;
}
zjhm1 = zjhm;
if (zjhm.length == 18 )
{
zjhm1 = zjhm.substr( 0 , 17 ) ;
zjhm2 = zjhm.substr( 17 , 1 );
}
re = new RegExp( " [^0-9] " );
if (s = zjhm1.match(re))
{
alert( " 输入的值中含有非法字符' " + s + " '请检查! " );
return 0 ;
}
// 取出生日期
if (zjhm.length == 15 )
{
birthday = " 19 " + zjhm.substr( 6 , 6 );
}
else
{
re = new RegExp( " [^0-9X] " );
if (s = zjhm2.match(re)) // 18位身份证对末位要求数字或字符
{
alert( " 输入的值中含有非法字符' " + s + " '请检查! " );
return 0 ;
}
birthday = zjhm.substr( 6 , 8 );
}
birthday = birthday.substr( 0 , 4 ) + " - " + birthday.substr( 4 , 2 ) + " - " + birthday.substr( 6 , 2 )
// alert("birthday"+birthday)
if (isDate( " 证件号码 " ,birthday) == 0 ) // 检查日期的合法性
{
return 0 ;
}
var nl = cal_years(birthday); // 求年龄
// if (nl-0<18 || nl>70)
if (nl - 0 < 18 )
{
alert( " 年龄要求 18岁以上 ,当前 " + nl + " ! " );
return 0 ;
}
if (zjhm.length == 18 )
{
return (sfzCheck(zjhm)); // 对18位长的身份证进行末位校验
}
}
else
{ if (zjhm.length > 17 ) {
alert( " 非‘居民身份证’长度不得超过17位,请检查! " ) ;
return 0 ;
}
}
return 1 ;
}
function check_zjhmNoAge(zjmc,zjhm)
{
var birthday = "" ;
var zjhm1 = "" ;
var zjhm2 = "" ;
var s = "" ;
if (notNull( " 证件号码 " ,zjhm) == 0 ) { return 0 ; }
if (zjmc == " A " ) // 身份证号码
{
if ( ! (zjhm.length == 15 || zjhm.length == 18 ) )
{
alert( " 身份证长度不对,请检查! " ) ;
return 0 ;
}
zjhm1 = zjhm;
if (zjhm.length == 18 )
{
zjhm1 = zjhm.substr( 0 , 17 ) ;
zjhm2 = zjhm.substr( 17 , 1 );
}
re = new RegExp( " [^0-9] " );
if (s = zjhm1.match(re))
{
alert( " 输入的值中含有非法字符' " + s + " '请检查! " );
return 0 ;
}
// 取出生日期
if (zjhm.length == 15 )
{
birthday = " 19 " + zjhm.substr( 6 , 6 );
}
else
{
re = new RegExp( " [^0-9X] " );
if (s = zjhm2.match(re)) // 18位身份证对末位要求数字或字符
{
alert( " 输入的值中含有非法字符' " + s + " '请检查! " );
return 0 ;
}
birthday = zjhm.substr( 6 , 8 );
}
birthday = birthday.substr( 0 , 4 ) + " - " + birthday.substr( 4 , 2 ) + " - " + birthday.substr( 6 , 2 )
// alert("birthday"+birthday)
if (isDate( " 证件号码 " ,birthday) == 0 ) // 检查日期的合法性
{
return 0 ;
}
if (zjhm.length == 18 )
{
return (sfzCheck(zjhm)); // 对18位长的身份证进行末位校验
}
}
else
{ if (zjhm.length > 17 ) {
alert( " 非‘居民身份证’长度不得超过17位,请检查! " ) ;
return 0 ;
}
}
return 1 ;
}
function id15to18(zjhm)
{
var strJiaoYan = new Array( " 1 " , " 0 " , " X " , " 9 " , " 8 " , " 7 " , " 6 " , " 5 " , " 4 " , " 3 " , " 2 " );
var intQuan = new Array( 7 , 9 , 10 , 5 , 8 , 4 , 2 , 1 , 6 , 3 , 7 , 9 , 10 , 5 , 8 , 4 , 2 , 1 );
var ll_sum = 0 ;
var i;
var ls_check;
zjhm = zjhm.substring( 0 , 6 ) + " 19 " + zjhm.substring( 6 );
for (i = 0 ;i <= 16 ;i ++ ) {
ll_sum = ll_sum + (parseFloat(zjhm.substr(i, 1 ))) * intQuan[i];
}
ll_sum = ll_sum % 11 ;
zjhm = zjhm + strJiaoYan[ll_sum];
return zjhm;
}
// -------------------------------
// 函数名 :check_sg(i_value)
// 参数说明:身高。
// 功能介绍:检查身高是否为数字;是否>=100,<=250
// 返回值 :1-是,0-不是
// -------------------------------
function check_sg(i_value)
{
if (isNum( " 身高 " ,i_value) == 0 ) // 检查身高是否为数字
{
return 0 ;
}
else
{
if ((i_value - 0 ) < 100 || (i_value - 0 ) > 250 )
{
alert( " '身高'合理范围应在 100--250 ! " );
return 0 ;
}
}
return 1 ;
}
// -------------------------------
// 函数名 :check_sl(i_value)
// 参数说明:视力。
// 功能介绍:检查视力是否为数字;是否>=4.9,<=5.5
// 返回值 :1-是,false-不是
// -------------------------------
function check_sl(i_value)
{
var reg = /^ (\d { 1 , 1 } )(\.)(\d { 1 , 1 } )$ / ;
if (document.all[ " zsl " ].value.length == 2 )
{
document.all[ " zsl " ].value = document.all[ " zsl " ].value.substr( 0 , 1 ) + " . " + document.all[ " zsl " ].value.substr( 1 , 1 );
}
if (document.all[ " ysl " ].value.length == 2 )
{
document.all[ " ysl " ].value = document.all[ " ysl " ].value.substr( 0 , 1 ) + " . " + document.all[ " ysl " ].value.substr( 1 , 1 );
}
var r = document.all[ " zsl " ].value.match(reg);
var r1 = document.all[ " ysl " ].value.match(reg);
if (r == null )
{
alert( " 左视力的格式应为:x.x ! " )
return 0 ;
}
if (r1 == null )
{
alert( " 右视力的格式应为:x.x ! " )
return 0 ;
}
if ((document.all[ " zsl " ].value - 0 ) < 4.9 || (document.all[ " zsl " ].value - 0 ) > 5.5 )
{
alert( " '左视力'应在 4.9--5.5 范围! " );
return 0 ;
}
if ((document.all[ " ysl " ].value - 0 ) < 4.9 || (document.all[ " ysl " ].value - 0 ) > 5.5 )
{
alert( " '右视力'应在 4.9--5.5 范围! " );
return 0 ;
}
return 1 ;
}
// -------------------------------
// 函数名:isHg(bsl,tl,sz,qgjb)
// 功能介绍:辨色力,听力,上肢,躯干颈部是否合格
// 参数说明:辨色力,听力,上肢,躯干颈部
// 返回值 :1-符合申请,0-不符合
// -------------------------------
function isHg(bsl,tl,sz,qgjb)
{ // alert(bsl+tl+sz+qgjb)
if ( ! (bsl == 1 ))
{
alert( " '辨色力'不合格者不能申请! " );
return 0 ;
}
if ( ! (tl == 1 ))
{
alert( " '听力'不合格者不能申请! " );
return 0 ;
}
if ( ! (sz == 1 ))
{
alert( " '上肢'不合格者不能申请! " );
return 0 ;
}
if ( ! (qgjb == 1 ))
{
alert( " '躯干颈部'不合格者不能申请! " );
return 0 ;
}
if ((document.all[ " yxz " ].value) == 0 )
{
alert( " 右下肢必须合格! " )
document.all.yxz.focus();
return 0 ;
}
return 1 ;
}
// -------------------------------
// 函数名:sfzCheck(hm)
// 功能介绍:对18位长的身份证进行末位校验
// 参数说明:身份证号码
// 返回值 :1-符合,0-不符合
// -------------------------------
function sfzCheck(hm)
{
var w = new Array();
var ll_sum;
var ll_i;
var ls_check;
if (hm.length == 15 ) // 长度15,直接返回true
return true ;
if (hm.length != 15 && hm.length != 18 ) {
alert( " 身份证号码长度不正确 " );
return false ;
}
w[ 0 ] = 7 ;
w[ 1 ] = 9 ;
w[ 2 ] = 10 ;
w[ 3 ] = 5 ;
w[ 4 ] = 8 ;
w[ 5 ] = 4 ;
w[ 6 ] = 2 ;
w[ 7 ] = 1 ;
w[ 8 ] = 6 ;
w[ 9 ] = 3 ;
w[ 10 ] = 7 ;
w[ 11 ] = 9 ;
w[ 12 ] = 10 ;
w[ 13 ] = 5 ;
w[ 14 ] = 8 ;
w[ 15 ] = 4 ;
w[ 16 ] = 2 ;
ll_sum = 0 ;
for (ll_i = 0 ;ll_i <= 16 ;ll_i ++ )
{ // alert("ll_i:"+ll_i+" "+hm.substr(ll_i,1)+"w[ll_i]:"+w[ll_i]+" ll_sum:"+ll_sum);
ll_sum = ll_sum + (hm.substr(ll_i, 1 ) - 0 ) * w[ll_i];
}
ll_sum = ll_sum % 11 ;
switch (ll_sum)
{
case 0 :
ls_check = " 1 " ;
break ;
case 1 :
ls_check = " 0 " ;
break ;
case 2 :
ls_check = " X " ;
break ;
case 3 :
ls_check = " 9 " ;
break ;
case 4 :
ls_check = " 8 " ;
break ;
case 5 :
ls_check = " 7 " ;
break ;
case 6 :
ls_check = " 6 " ;
break ;
case 7 :
ls_check = " 5 " ;
break ;
case 8 :
ls_check = " 4 " ;
break ;
case 9 :
ls_check = " 3 " ;
break ;
case 10 :
ls_check = " 2 " ;
break ;
}
if (hm.substr( 17 , 1 ) != ls_check)
{
alert( " 身份证校验错误!------ 末位应该: " + ls_check + " 实际: " + hm.substr(hm.length - 1 , 1 ));
return 0 ;
}
return 1
}
function comm_check() {
if (document.all[ " xm " ].value.length < 2 )
{
document.all[ " xm " ].focus();
alert( " '姓名'长度至少两汉字! " );
return 0 ;
}
if (document.all[ " lxdh " ].value.length < 6 )
{
document.all[ " lxdh " ].focus();
alert( " '联系电话'长度至少6位! " );
return 0 ;
}
return 1 ;
}
// -------------------------------
// 函数名 :check_zjcx(s_value,s_cx_dm)
// 参数说明:准驾车型字符串,合法的准驾车行字符串数组。
// 功能介绍:检查车型输入是否正确,只检查是否包含合法的准驾车行字符串,重复、次序颠倒不认为是错误
// 返回值 :1-包含合法的准驾车行,0-不合法
//
// 戴嘉 2004.05.12
// -------------------------------
function check_zjcx(s_value,s_cx_dm)
{
// 合法的准驾车行字符串数组
// var s_cx_dm=new Array("A1","A2","A3","B1","B2","C1","C2","C3","C4","D","E","F","M","N","P");
// 字符串数组的长度
var s_cx_input; // 存放需要检验的字符串
var i_pos; // 查找子串定位
var i;
s_cx_input = s_value;
for (i in s_cx_dm) // 对合法准驾车行字符串数组轮循
{
do
{
i_pos = s_cx_input.indexOf(s_cx_dm[i]); // 是否包含当前车型
if (i_pos !=- 1 ) // 包含
{
// 去掉找到的子串
s_cx_input = s_cx_input.slice( 0 ,i_pos) + s_cx_input.slice(i_pos + s_cx_dm[i].length);
}
} while (i_pos !=- 1 ); // 找不到当前车型子串,进入下一车型子串查找
}
if (s_cx_input.length == 0 ) // 输入字符串包含的都是合法的车型子串(全部被去掉了)
return 1 ;
else // 输入字符串还包含有非法的字符串
return 0 ;
}
// -------------------------------
// 函数名:DateAddMonth(strDate,iMonths)
// 功能介绍:获得日期加上iMonths月数后的日期
// 参数说明:strDate 日期
// 返回值 :无返回值
// -------------------------------
function DateAddMonth(strDate,iMonths) {
var thisYear = parseFloat(strDate.substring( 0 , 4 ));
var thisMonth = parseFloat(strDate.substring( 5 , 7 ));
var thisDate = parseFloat(strDate.substring( 8 , 10 ));
var d = thisYear * 12 + thisMonth + iMonths;
var newMonth = d % 12 ;
if (newMonth == 0 ) {
newMonth = 12 ;
}
var newYear = (d - newMonth) / 12 ;
var newDate = thisDate;
var iMonthLastDate = getMonthLastDate(newYear,newMonth)
if (newDate > iMonthLastDate) newDate = iMonthLastDate;
var newDay = "" ;
newDay += newYear;
if (newMonth < 10 ) {
newDay += " - " + " 0 " + newMonth;
} else {
newDay += " - " + newMonth;
}
if (newDate < 10 ) {
newDay += " - " + " 0 " + newDate;
} else {
newDay += " - " + newDate;
}
return (newDay); // 返回日期。
}
function getMonthLastDate(iYear,iMonth) {
var dateArray = new Array( 31 , 28 , 31 , 30 , 31 , 30 , 31 , 31 , 30 , 31 , 30 , 31 );
var days = dateArray[iMonth - 1 ];
if ((((iYear % 4 == 0 ) && (iYear % 100 != 0 )) || (iYear % 400 == 0 )) && iMonth == 2 ) {
days = 29 ;
}
return days;
}
var keyvalue = "" ;
var srcStr = " ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789 " ;
var objName = "" ;
function findCode(event,obj)
{
if (objName != obj.name) {
objName = obj.name;
keyvalue = "" ;
}
if (event.keyCode == 13 || event.keyCode == 9 ) {
keyvalue = "" ;
return true ;
}
// if(srcStr.indexOf(String.fromCharCode(event.keyCode))!=-1)
// keyvalue="";
keyvalue = keyvalue + String.fromCharCode(event.keyCode).toUpperCase();
// alert(keyvalue);
for ( var i = 0 ;i < obj.options.length;i ++ )
{
if (obj.options[i].value.indexOf(keyvalue) !=- 1 )
{
obj.value = obj.options[i].value;
if (obj.options[i].value == keyvalue) {
objName = ""
}
return true ;
}
}
}
function findName(event,obj) // 根据代码取名称
{
if (objName != obj.name) {
objName = obj.name;
keyvalue = "" ;
}
if (event.keyCode == 13 || event.keyCode == 9 ) {
keyvalue = "" ;
return true ;
}
// if(srcStr.indexOf(String.fromCharCode(event.keyCode))!=-1)
// keyvalue="";
keyvalue = keyvalue + String.fromCharCode(event.keyCode).toUpperCase();
// alert(keyvalue);
// alert(obj.options.length);
for ( var i = 0 ;i < obj.options.length;i ++ )
{
// alert(obj.options[i].text);
if (obj.options[i].text.indexOf(keyvalue) !=- 1 )
{
obj.value = obj.options[i].value;
return true ;
}
}
}
// 自动清除输入框中的空格
function ignoreSpaces(string) {
var temp = "" ;
string = '' + string;
splitstring = string.split( " " ); // 双引号之间是个空格;
for (i = 0 ; i < splitstring.length; i ++ )
temp += splitstring[i];
return temp;
}
/**/ /*
文件名: function.js
功 能: 常用的功能库
功能块:
更 新: 金永俊 2004年4月16日
戴嘉 2004.05.20
*/
var todaystr;
todaystr = new Date();
// -------------------------------
// 函 数 名:cal_years(rq)
// 功能介绍:计算指定日期到今天是多少年.
// 参数说明:日期
// 返 回:年数
// -------------------------------
function cal_years(rq)
{
var years;
// var dDate = new Date(); //系统日期(系统日期应该大于rq)
var dDate = todaystr;
var month1 = dDate.getMonth() + 1 ;
var year1 = dDate.getFullYear();
var day1 = dDate.getDate()
var year2 = rq.substr( 0 , 4 );
var month2 = rq.substr( 5 , 2 );
var day2 = rq.substr( 8 , 2 );
// alert("-----------dDate-"+dDate+" year1"+year1+" month1"+month1+" day1"+day1);
years = year1 - year2 - 0 ;
if (month2 > month1) // 月份未到,years-1
{
years = years - 1 ;
}
else
{
if ( (month1 == month2) && (day2 > day1)) // 月份到了,但日未到,years-1
{
years = years - 1 ;
}
}
// alert("-----------years-"+years);
return years;
}
// -------------------------------
// 函 数 名:cal_years1(rq1,rq2)
// 功能介绍:计算指定日期到今天是多少年.(rq1-rq2)
// 参数说明:日期1,日期2
// 返 回:年数
// -------------------------------
function cal_years1(rq1,rq2)
{
var years;
var year1 = rq1.substr( 0 , 4 );
var month1 = rq1.substr( 5 , 2 );
var day1 = rq1.substr( 8 , 2 );
var year2 = rq2.substr( 0 , 4 );
var month2 = rq2.substr( 5 , 2 );
var day2 = rq2.substr( 8 , 2 );
// alert("-----------dDate-"+dDate+" year1"+year1+" month1"+month1+" day1"+day1);
years = year1 - year2 - 0 ;
if (month2 > month1) // 月份未到,years-1
{
years = years - 1 ;
}
else
{
if ( (month1 == month2) && (day2 > day1)) // 月份到了,但日未到,years-1
{
years = years - 1 ;
}
}
// alert("-----------years-"+years);
return years;
}
// -------------------------------
// 函 数 名:cal_days(rq1,rq2)
// 功能介绍:计算两个日期间隔天数(要求rq2>=rq1).
// 参数说明:日期1,日期2
// 返 回:天数
// -------------------------------
function cal_days(rq1,rq2)
{ var d, s, t, d1 , d2, s1 , s2;
var DyMilli = 24 * 60 * 60 * 1000 ; // 一天的毫秒数
// d = new Date();
d = todaystr
s = d.getTime(); // 系统日期与 1970 年 1 月 1 日午夜间全球标准时间 的毫秒数
var days;
// 系统日期、年、月、日
// var dDate = new Date();
var dDate = todaystr
var month = dDate.getMonth() + 1 ;
var year = dDate.getFullYear();
var day = dDate.getDate();
d = new Date(year,month - 1 ,day);
s = d.getTime()
var month1;
var month2;
var year1;
var year2;
var day1;
var day2;
if (rq1 == "" )
{
s1 = s;
month1 = month;
year1 = year;
day1 = day;
}
else
{
year1 = rq1.substr( 0 , 4 );
month1 = rq1.substr( 5 , 2 );
day1 = rq1.substr( 8 , 2 );
d1 = new Date(year1,month1 - 1 ,day1);
s1 = d1.getTime();
}
if (rq2 == "" )
{
s2 = s;
month2 = month;
year2 = year;
day2 = day;
}
else
{
year2 = rq2.substr( 0 , 4 );
month2 = rq2.substr( 5 , 2 );
day2 = rq2.substr( 8 , 2 );
d2 = new Date(year2,month2 - 1 ,day2);
s2 = d2.getTime();
}
// alert("rq1:"+rq1+" rq2:"+rq2+" y1:"+year1+" y2:"+year2+" m1:"+month1+" m2:"+month2+" d1:"+day1+" d2:"+day2);
days = Math.round((s2 - s1) / DyMilli);;
// alert("days:"+days);
return days;
}
// -------------------------------
// 函 数 名:get_checkbox(get_item)
// 功能介绍:取复选框的内容.
// 参数说明:复选框的数组名
// 返 回:复选框的值
// -------------------------------
function get_checkbox(get_item)
{
var get_item_content
get_item_content = ""
var item_length = get_item.length
// alert(item_length)
for ( var i = 0 ;i < item_length;i ++ )
{
if (get_item.item(i).checked)
{
// alert(get_item.item(i).value)
get_item_content = get_item_content + get_item.item(i).value
}
}
return get_item_content;
}
// -------------------------------
// 函 数 名:set_checkbox(set_item,s_value)
// 功能介绍:设置复选框数组的内容.
// 参数说明:复选框的控件数组对象,表示状态的字符串(checkbox的value值)
// 返 回:设置的复选框数量
//
// 戴嘉 2004.05.11
// -------------------------------
function set_checkbox(set_item,s_value)
{
var i,j; // 循环计数器,i-控件数组循环,j-字符串值位置控制
// 轮循状态字符串
for (j = 0 ;j < s_value.length;j ++ )
{
// 轮循控简数组
for (i = 0 ;i < set_item.length;i ++ )
{
if (set_item.item(i).value == s_value.substr(j, 1 ))
{
set_item.item(i).checked = true ;
break ;
}
}
}
return j;
}
// -------------------------------
// 函 数 名:bulidXzqh(obj,Opt_name,Opt_value)
// 功能介绍:构建新的所属辖区下拉列表
// 参数说明:日期1,日期2
// 返 回:
// -------------------------------
function bulidXzqh(obj,Opt_name,Opt_value)
{
var n1
if (Opt_name.length > 0 )
{
n1 = document.createElement( " OPTION " )
n1.value = Opt_value
n1.text = Opt_name
obj.add(n1)
var i = obj.length - 1
obj.options[i].selected = true
}
}
// ----------构建下拉列表--------------
function buildList(get_xml_id,put_id,view_type)
{
var xmldoc,theNode,code1Node;
var get_list,get_list_code,get_list_value
var str1 = " document.all. " + get_xml_id + " .XMLDocument "
xmldoc = eval(str1)
xmldoc.async = false
// xmldoc=eval("document.all."+get_xml_id+".XMLDocument")
// 取类型
var str2 = " xmldoc.getElementsByTagName(\ " Codes\ " ) "
// get_list=eval("xmldoc.getElementsByTagName(\""+get_type_name +"\")")
get_list = eval(str2)
// get_list_code=get_list.item(0).getElementsByTagName("code")
// get_list_value=get_list.item(0).getElementsByTagName("value")
if (view_type == null || view_type == "" ) {view_type = " 0 " } // 缺省
// 显示名称,保存名称,view_type=="2"
if (view_type == " 2 " )
{
for ( var i = 0 ;i < get_list.length;i ++ )
{
var str3 = " document.all[\ "" +put_id+ " \ " ].options[i]=new Option(get_list.item(i).lastChild.text,get_list.item(i).lastChild.text) "
// alert(str3)
eval(str3)
// eval("document.all[\""+put_id+"\"].options[i]=new Option(get_list_value.item(i).text,get_list_code.item(i).text")
}
}
// 显示时带代码,view_type=="1"
if (view_type == " 1 " )
{
for ( var i = 0 ;i < get_list.length;i ++ )
{
var str3 = " document.all[\ "" +put_id+ " \ " ].options[i]=new Option(get_list.item(i).firstChild.text+get_list.item(i).lastChild.text,get_list.item(i).firstChild.text) "
// alert(str3)
eval(str3)
// eval("document.all[\""+put_id+"\"].options[i]=new Option(get_list_value.item(i).text,get_list_code.item(i).text")
}
}
if (view_type == " 0 " )
{
// 显示时不带代码,view_type=="0"
for ( var i = 0 ;i < get_list.length;i ++ )
{
var str3 = " document.all[\ "" +put_id+ " \ " ].options[i]=new Option(get_list.item(i).lastChild.text,get_list.item(i).firstChild.text) "
// alert(str3)
eval(str3)
// eval("document.all[\""+put_id+"\"].options[i]=new Option(get_list_value.item(i).text,get_list_code.item(i).text")
}
}
}
// ----------建立复选列表(准驾必备和提交资料)--------------
function build_checkbox(get_xml_id,put_id,checkbox_name)
{
var xmldoc,theNode,code1Node;
var get_list,get_list_code,get_list_value
var str1 = " document.all. " + get_xml_id + " .XMLDocument "
xmldoc = eval(str1)
var htmlstr = ""
// 取类型
var str2 = " xmldoc.getElementsByTagName(\ " Codes\ " ) "
get_list = eval(str2)
for ( var i = 0 ;i < get_list.length;i ++ )
{
htmlstr = htmlstr + " <input type=\ " checkbox\ " name=\ "" +checkbox_name+ " \ " value=\ "" +get_list.item(i).firstChild.text+ " \ " > " + get_list.item(i).lastChild.text
}
var str3 = " document.all. " + put_id + " .innerHTML=htmlstr "
// alert( htmlstr)
eval(str3)
}
// ----------整理提交资料项目--------------
function get_checkbox1(get_item,put_id)
{
var get_item_content
get_item_content = ""
var item_length = get_item.length
// alert(item_length)
for ( var i = 0 ;i < item_length;i ++ )
{
if (get_item.item(i).checked)
{
// alert(get_item.item(i).value)
get_item_content = get_item_content + get_item.item(i).value
}
}
alert(get_item_content);
var the_str = " document.all[\ "" +put_id+ " \ " ].value=get_item_content "
// document.all["get_tjzl"].value=get_item_content
eval(the_str)
}
/**/ /* 多项选择checkbox的逆过程
box_value 为字符串
box_name checkbox的name
2003-05-10
*/
function back_checkbox(box_name,box_value)
{
var box_length
var item_value
var obj_str
var obj
obj_str = " document.all[\ "" +box_name+ " \ " ] "
obj = eval(obj_str)
box_length = obj.length
for ( var i = 0 ;i < box_length;i ++ )
{
item_value = obj.item(i).value
if (box_value.indexOf(item_value) >- 1 )
{
obj.item(i).checked = true
}
}
}
function decode_from_xml(xml_id,the_code) // 代码翻译
{
var de_code = ""
var str,obj
str = " document.all[\ "" +xml_id+ " \ " ] "
obj = eval(str)
while ( ! obj.recordset.EOF)
{
var code = obj.recordset( " code " )
if (code == the_code)
{
de_code = new String(obj.recordset( " Value " ))
}
obj.recordset.moveNext();
}
obj.recordset.moveFirst();
return de_code;
}
function decode_self(the_code)
{
var de_code
de_code = ""
if (the_code == " 1 " )
{
de_code = " 合格 " ;
}
else
{
de_code = " 不合格 " ;
}
return de_code;
}
// ----------构建可管理车型下拉列表--------------
function glcx_list(get_xml_id,glcx,put_id)
{
var xmldoc,theNode,code1Node;
var get_list,get_list_code,get_list_value
var str1 = " document.all. " + get_xml_id + " .XMLDocument "
// alert(str1)
xmldoc = eval(str1)
xmldoc.async = false
// alert(xmldoc.xml)
// 取类型
var str2 = " xmldoc.getElementsByTagName(\ " Codes\ " ) "
get_list = eval(str2)
// alert("AAA:"+get_list.length)
var j = 0
for ( var i = 0 ;i < get_list.length;i ++ )
{
if (glcx.indexOf(get_list.item(i).firstChild.text) >- 1 )
{
var str3 = " document.all[\ "" +put_id+ " \ " ].options[j]=new Option(get_list.item(i).firstChild.text+get_list.item(i).lastChild.text,get_list.item(i).firstChild.text) "
eval(str3)
j = j + 1
}
}
}
function cReadonly(obj) {
if (obj.type == " text " ) {
obj.readOnly = true
obj.parentElement.className = " readonly "
} else {
obj.parentElement.className = " readonly "
}
}
function cEditable(obj) {
if (obj.type == " text " ) {
obj.readOnly = false
obj.parentElement.className = " editable "
} else {
obj.parentElement.className = " editable "
}
}
// -------------------------------
// 函数名:jstrim(s_value)
// 功能介绍:去掉s_value两端的空格
// 参数说明:被操作的字符串
// 返回值 :处理结果字符串
// -------------------------------
function jstrim(s_value)
{
var i;
var ibegin;
for (i = 0 ;i < s_value.length;i ++ )
{
if (s_value.charAt(i) != ' ')
break ;
}
if (i == s_value.length)
return "" ;
else
ibegin = i;
for (i = s_value.length - 1 ;i >= 0 ;i -- )
{
if (s_value.charAt(i) != ' ')
break ;
}
return s_value.substr(ibegin,i - ibegin + 1 );
}
// -------------------------------
// 函数名:trimall()
// 功能介绍:去掉document的所有form里面的所有的input(text)里面的两端空格
// 参数说明:无
// 返回值 :无
// -------------------------------
function trimall()
{
var i,j;
var allforms;
var myelement;
allforms = document.forms;
for (i = 0 ;i < allforms.length;i ++ )
{
for (j = 0 ;j < allforms(i).elements.length;j ++ )
{
myelement = allforms(i).elements(j);
if (myelement.type == " text " )
// myelement.value=jstrim(myelement.value.toUpperCase());
myelement.value = jstrim(myelement.value);
}
}
}
// -------------------------------
// 函数名:
// 功能介绍:日期加年
// 参数说明:无
// 返回值 :无
// -------------------------------
function rqaddyears(rq1,ns)
{
if (rq1.length == 10 ) {
y = parseInt(rq1.substring( 0 , 4 )) + ns
m = parseInt(rq1.substring( 5 , 7 ))
d = parseInt(rq1.substring( 8 , 10 ))
} else if (rq1.length == 8 ) {
y = parseInt(rq1.substring( 0 , 4 )) + ns
m = parseInt(rq1.substring( 4 , 6 ))
d = parseInt(rq1.substring( 6 , 8 ))
} else {
return "" ;
}
var str = y + rq1.substring( 4 , 10 );
if (m == 2 && d == 29 ) {
str = y + rq1.substring( 4 , 7 ) + " -28 " ;
}
return str
}
// 光标移动至最后
function movelast()
{
var e = event.srcElement;
var r = e.createTextRange();
r.moveStart('character',e.value.length);
r.collapse( true );
r.select();
}
// 翻译obj(select)中的值
function trancode(obj,val) {
for ( var i = 0 ;i < obj.length;i ++ ) {
var tmp
tmp = obj.options(i).text
tmp = tmp.substr((tmp.indexOf( " : " ) + 1 ),tmp.length - tmp.indexOf( " : " ) - 1 )
if (obj.options(i).value == val) {
return tmp
}
}
return ""
}
// -------------------------------
// 函数名:DateAddMonth(strDate,iMonths)
// 功能介绍:获得日期加上iMonths月数后的日期
// 参数说明:strDate 日期
// 返回值 :无返回值
// -------------------------------
function DateAddMonth(strDate,iMonths) {
var thisYear = parseFloat(strDate.substring( 0 , 4 ));
var thisMonth = parseFloat(strDate.substring( 5 , 7 ));
var thisDate = parseFloat(strDate.substring( 8 , 10 ));
var d = thisYear * 12 + thisMonth + parseFloat(iMonths);
var newMonth = d % 12 ;
if (newMonth == 0 ) {
newMonth = 12 ;
}
var newYear = (d - newMonth) / 12 ;
var newDate = thisDate;
var iMonthLastDate = getMonthLastDate(newYear,newMonth)
if (newDate > iMonthLastDate) newDate = iMonthLastDate;
var newDay = "" ;
newDay += newYear;
if (newMonth < 10 ) {
newDay += " - " + " 0 " + newMonth;
} else {
newDay += " - " + newMonth;
}
if (newDate < 10 ) {
newDay += " - " + " 0 " + newDate;
} else {
newDay += " - " + newDate;
}
return (newDay); // 返回日期。
}
function getMonthLastDate(iYear,iMonth) {
var dateArray = new Array( 31 , 28 , 31 , 30 , 31 , 30 , 31 , 31 , 30 , 31 , 30 , 31 );
var days = dateArray[iMonth - 1 ];
if ((((iYear % 4 == 0 ) && (iYear % 100 != 0 )) || (iYear % 400 == 0 )) && iMonth == 2 ) {
days = 29 ;
}
return days;
}
// ####################################
// 保存客户信息
//
//
// #####################################
function getcookie(nKey) {
var search = nKey + " = " ;
begin = document.cookie.indexOf(search);
if (begin !=- 1 ) {
begin += search.length
end = document.cookie.indexOf( " ; " ,begin);
if (end ==- 1 ) {
end = document.cookie.length;
}
return document.cookie.substring(begin,end)
} else {
return ""
}
}
function setcookie(nKey,nVal) {
document.cookie = nKey + " = " + nVal + " ;expires=wednesday,09-oct-2099 23:00:00 GMT "
}
function disableall()
{
var i,j;
var allforms;
var myelement;
allforms = document.forms;
for (i = 0 ;i < allforms.length;i ++ )
{
for (j = 0 ;j < allforms(i).elements.length;j ++ )
{
myelement = allforms(i).elements(j);
if (myelement.type == " text " )
// myelement.value=jstrim(myelement.value.toUpperCase());
// myelement.value=jstrim(myelement.value);
myelement.readOnly = true ;
}
}
}
function selectedObj(obj,value) {
var i = obj.length;
for (index = 0 ;index < i;index ++ ) {
if (obj.options[index].value == value)
{
obj.options[index].selected = true ;
break ;
}
}
}
function getSelectedObjText(obj) {
return obj.options[obj.selectedIndex].text;
}
for ( var i = 0 ; i < s.length; i ++ ) {
var Char = s.charAt(i);
if ((Char < " a " || Char > " z " ) && (Char < " A " || Char > " Z " ))
return false ;
}
return true ;
}
function isNumeric(p) {
if (p == "" )
return false ;
var l = p.length;
var count = 0 ;
for ( var i = 0 ; i < l; i ++ ) {
var digit = p.charAt(i);
if (digit == " . " ) {
++ count;
if (count > 1 ) return false ;
} else if (digit < " 0 " || digit > " 9 " )
return false ;
}
return true ;
}
function isEmail(email) {
invalidChars = " /;,:{}[]|*%$#!()`<>? " ;
if (email == "" ) {
return false ;
}
for (i = 0 ; i < invalidChars.length; i ++ ) {
badChar = invalidChars.charAt(i) ;
if (email.indexOf(badChar, 0 ) > - 1 ) {
return false ;
}
}
atPos = email.indexOf( " @ " , 1 );
if (atPos == - 1 ) {
return false ;
}
if (email.indexOf( " @ " , atPos + 1 ) != - 1 ) {
return false ;
}
periodPos = email.indexOf( " . " ,atPos)
if (periodPos == - 1 ) {
return false ;
}
if ( atPos + 2 > periodPos) {
return false ;
}
if ( periodPos + 3 > email.length) {
return false ;
}
return true ;
}
// pageNO :this pageNO
// nextPage: first,last,next,up,number(eg:777777)
function goPage(searchForm,pageNO,pageCounter,nextPage) {
var url;
var customPageNO;
// alert("hello");
url = searchForm.action + " &pageNO= " ;
if (nextPage == " first " ) {
if (pageNO == 1 ) {
alert( " 已经是第一页! " );
return false ;
} else {
pageNO = 1 ;
url = url + pageNO;
searchForm.action = url;
searchForm.submit();
}
} else if (nextPage == " up " ) {
if (pageNO == 1 ) {
alert( " 已经是第一页! " );
return false ;
} else {
pageNO = pageNO - 1 ;
url = url + pageNO;
searchForm.action = url;
searchForm.submit();
}
} else if (nextPage == " next " ) {
if (pageNO == pageCounter) {
alert( " 已经是最后一页 " );
return false ;
} else {
pageNO = parseInt(pageNO) + 1 + "" ;
url = url + pageNO;
searchForm.action = url;
searchForm.submit();
}
} else if (nextPage == " last " ) {
// alert("pageNO:" +pageNO + " pageCounter:"+pageCounter);
if (pageNO == pageCounter) {
alert( " 已经是最后一页 " );
return false ;
} else {
pageNO = pageCounter
url = url + pageNO;
searchForm.action = url;
searchForm.submit();
}
} else if (isNumeric(nextPage) ) {
if (pageNO == nextPage) {
alert( " 已经是第 " + pageNO + " 页! " );
return false ;
}
pageNO = nextPage;
if (pageNO >= 1 && pageNO <= pageCounter) {
url = url + pageNO;
searchForm.action = url;
searchForm.submit();
} else {
alert( " 页面超出了范围! " );
return false ;
}
}
return false ;
}
/**/ /*
文件名: check_data.js
功 能: 主要进行数据校验
更 新: 金永俊 2004年4月16日
戴 嘉 2004.05.11
*/
// -------------------------------
// 函数名:isNull(i_field,i_value)
// 功能介绍:检查输入是否为非空
// 参数说明:数据项,输入的对应值
// 返回值 :0-非空,1-为空
// -------------------------------
function isNull(i_field,i_value)
{
if (i_value == null || jstrim(i_value) == "" )
{
return 1 ;
}
else
{
alert( " ' " + i_field + " ' 要求为空! " );
return 0 ;
}
}
// -------------------------------
// 函数名:notNull(i_field,i_value)
// 功能介绍:检查输入是否为非空
// 参数说明:数据项,输入的对应值
// 返回值 :1-非空,0-为空
// -------------------------------
function notNull(i_field,i_value)
{
if (i_value == null || jstrim(i_value) == "" )
{
alert( " ' " + i_field + " ' 不可为空! " );
return 0 ;
}
return 1 ;
}
// -------------------------------
// 函数名:isNum(i_field,i_value)
// 功能介绍:检查输入字符串是否为数字
// 参数说明:数据项,输入的对应值
// 返回值 :1-是数字,0-非数字
// -------------------------------
function isNum(i_field,i_value)
{
if (notNull(i_field,i_value) == 0 )
{ return 0 ;
}
re = new RegExp( " [^0-9] " );
var s;
if (s = i_value.match(re))
{
alert( " ' " + i_field + " ' 中含有非法字符 ' " + s + " ' ! " );
return 0 ;
}
return 1 ;
}
// -------------------------------
// 函数名:isGreatNum(i_field,i_value,i_value1)
// 功能介绍:检查输入字符串是否是数字并且大于i_value1
// 参数说明:数据项,输入的对应值,比较数值
// 返回值 :1-给定的i_value为数字且大于i_value1,
// 0-非数字或者i_value小于等于i_value1
//
// 戴嘉 2004.05.11
// -------------------------------
function isGreatNum(i_field,i_value,i_value1)
{
// 校验输入的是否为数值
if (isNum(i_field,i_value) == 0 )
return 0 ;
else
{
if (i_value <= i_value1)
return 0 ;
}
return 1 ;
}
// -------------------------------
// 函数名:isSmallNum(i_field,i_value,i_value1)
// 功能介绍:检查输入字符串是否是数字并且小于i_value1
// 参数说明:数据项,输入的对应值,比较数值
// 返回值 :1-给定的i_value为数字且小于i_value1,
// 0-非数字或者i_value大于等于i_value1
//
// 戴嘉 2004.05.11
// -------------------------------
function isSmallNum(i_field,i_value,i_value1)
{
// 校验输入的是否为数值
if (isNum(i_field,i_value) == 0 )
return 0 ;
else
{
if (i_value >= i_value1)
return 0 ;
}
return 1 ;
}
// -------------------------------
// 函数名:isDate(i_field,thedate)
// 功能介绍:校验字符串是否为日期格式
// 参数说明:数据项,输入的字符串
// 返回值 :0-不是,1--是
// -------------------------------
function isDate(i_field,thedate)
{
if ( ! (thedate.length == 8 || thedate.length == 10 ))
{ alert( " ' " + i_field + " '日期格式不对,\n要求为yyyymmdd或yyyy-mm-dd! " );
return 0 ;
}
if (thedate.length == 8 )
{
thedate = thedate.substr( 0 , 4 ) + " - " + thedate.substr( 4 , 2 ) + " - " + thedate.substr( 6 , 2 );
}
var reg = /^ (\d { 1 , 4 } )( - )(\d { 1 , 2 } )\ 2 (\d { 1 , 2 } )$ / ;
var r = thedate.match(reg);
if (r == null )
{
alert( " 请输入正确的' " + i_field + " ' ! " );
return 0 ;
}
var d = new Date(r[ 1 ],r[ 3 ] - 1 ,r[ 4 ]);
var newStr = d.getFullYear() + r[ 2 ] + (d.getMonth() + 1 ) + r[ 2 ] + d.getDate()
var newDate = r[ 1 ] + r[ 2 ] + (r[ 3 ] - 0 ) + r[ 2 ] + (r[ 4 ] - 0 )
// alert("----------r:"+r+" d:"+d+" newStr:"+newStr+" newDate:"+newDate);
if (newStr == newDate)
{
return 1 ;
}
alert( " ' " + i_field + " '日期格式不对,\n要求为yyyymmdd或yyyy-mm-dd! " );
return 0 ;
}
// -------------------------------
// 函数名:changeDate(thedate)
// 功能介绍:日期yyyymmdd转换成yyyy-mm-dd格式
// 参数说明:输入日期
// 返回值 :0-不是,1--是
// -------------------------------
function changeDate(thedate)
{
if (thedate.length == 8 )
{
thedate = thedate.substr( 0 , 4 ) + " - " + thedate.substr( 4 , 2 ) + " - " + thedate.substr( 6 , 2 );
}
return thedate;
}
// -------------------------------
// 函数名:isLength(i_field,i_length,i_value)
// 功能介绍:检查输入值是否为指定长度
// 参数说明:数据项,要求长度,值
// 返回值 :1-是指定长度,0-不是
// -------------------------------
function isLength(i_field,i_length,i_value)
{ // alert("---长度要求:"+i_length+" "+i_value.length);
if ( ! (i_value.length == i_length))
{
alert( " ' " + i_field + " ' 的长度要求为' " + i_length + " '! " );
return 0 ;
}
return 1 ;
}
// -------------------------------
// 函数名:dyLength(i_field,i_length,i_value)
// 功能介绍:检查输入值是否达到指定长度以上
// 参数说明:数据项,要求长度,值
// 返回值 :1-符合,0-不是
// -------------------------------
function dyLength(i_field,i_length,i_value)
{ // alert("---长度要求:"+i_length+" "+i_value.length);
if (i_value.length < i_length)
{
alert( " ' " + i_field + " ' 的长度至少为 ' " + i_length + " '! " );
return 0 ;
}
return 1 ;
}
// -------------------------------
// 函数名:xyLength(i_field,i_length,i_value)
// 功能介绍:检查输入值不要超过指定长度
// 参数说明:数据项,要求长度,值
// 返回值 :1-符合,0-不是
// -------------------------------
function xyLength(i_field,i_length,i_value)
{ // alert("---长度要求:"+i_length+" "+i_value.length);
if (i_value.length > i_length)
{
alert( " ' " + i_field + " ' 的长度最长为 ' " + i_length + " ' ! " );
return 0 ;
}
return 1 ;
}
// -------------------------------
// 函数名:check_hm(标签,长度,i_value)
// 参数说明:标签,长度,值。
// 功能介绍:检查输入号码字符串长度是否满足;是否全数字。
// 返回值 :1-是,false-不是
// -------------------------------
function check_hm(i_field,i_length,i_value)
{
if (isLength(i_field,i_length,i_value) == 0 )
{
return 0 ;
}
if (isNum(i_field,i_value) == 0 )
{
return 0 ;
}
return 1 ;
}
// -------------------------------
// 函数名:check_yzbm(i_value)
// 参数说明:邮政编码值。
// 功能介绍:检查邮政编码是否是6位长数字。
// 返回值 :1-是,false-不是
// -------------------------------
function check_yzbm(i_value)
{
if (isLength( " 邮政编码 " , " 6 " ,i_value) == 0 )
{
return 0 ;
}
if (isNum( " 邮政编码 " ,i_value) == 0 )
{
return 0 ;
}
return 1 ;
} // -------------------------------
// 函数名:check_zjhm(zjmc,obj)
// 参数说明:证件名称,证件号码。
// 功能介绍:检查身份证号码合法性。
// 对身份证检查是否为全数字;出生日期格式是否正确;是否<=18,<=70;校验码检查
// 返回值 :1-是,0-不
// -------------------------------
function check_zjhm(zjmc,zjhm)
{
var birthday = "" ;
var zjhm1 = "" ;
var zjhm2 = "" ;
var s = "" ;
if (notNull( " 证件号码 " ,zjhm) == 0 ) { return 0 ; }
if (zjmc == " A " ) // 身份证号码
{
if ( ! (zjhm.length == 15 || zjhm.length == 18 ) )
{
alert( " 身份证长度不对,请检查! " ) ;
return 0 ;
}
zjhm1 = zjhm;
if (zjhm.length == 18 )
{
zjhm1 = zjhm.substr( 0 , 17 ) ;
zjhm2 = zjhm.substr( 17 , 1 );
}
re = new RegExp( " [^0-9] " );
if (s = zjhm1.match(re))
{
alert( " 输入的值中含有非法字符' " + s + " '请检查! " );
return 0 ;
}
// 取出生日期
if (zjhm.length == 15 )
{
birthday = " 19 " + zjhm.substr( 6 , 6 );
}
else
{
re = new RegExp( " [^0-9X] " );
if (s = zjhm2.match(re)) // 18位身份证对末位要求数字或字符
{
alert( " 输入的值中含有非法字符' " + s + " '请检查! " );
return 0 ;
}
birthday = zjhm.substr( 6 , 8 );
}
birthday = birthday.substr( 0 , 4 ) + " - " + birthday.substr( 4 , 2 ) + " - " + birthday.substr( 6 , 2 )
// alert("birthday"+birthday)
if (isDate( " 证件号码 " ,birthday) == 0 ) // 检查日期的合法性
{
return 0 ;
}
var nl = cal_years(birthday); // 求年龄
// if (nl-0<18 || nl>70)
if (nl - 0 < 18 )
{
alert( " 年龄要求 18岁以上 ,当前 " + nl + " ! " );
return 0 ;
}
if (zjhm.length == 18 )
{
return (sfzCheck(zjhm)); // 对18位长的身份证进行末位校验
}
}
else
{ if (zjhm.length > 17 ) {
alert( " 非‘居民身份证’长度不得超过17位,请检查! " ) ;
return 0 ;
}
}
return 1 ;
}
function check_zjhmNoAge(zjmc,zjhm)
{
var birthday = "" ;
var zjhm1 = "" ;
var zjhm2 = "" ;
var s = "" ;
if (notNull( " 证件号码 " ,zjhm) == 0 ) { return 0 ; }
if (zjmc == " A " ) // 身份证号码
{
if ( ! (zjhm.length == 15 || zjhm.length == 18 ) )
{
alert( " 身份证长度不对,请检查! " ) ;
return 0 ;
}
zjhm1 = zjhm;
if (zjhm.length == 18 )
{
zjhm1 = zjhm.substr( 0 , 17 ) ;
zjhm2 = zjhm.substr( 17 , 1 );
}
re = new RegExp( " [^0-9] " );
if (s = zjhm1.match(re))
{
alert( " 输入的值中含有非法字符' " + s + " '请检查! " );
return 0 ;
}
// 取出生日期
if (zjhm.length == 15 )
{
birthday = " 19 " + zjhm.substr( 6 , 6 );
}
else
{
re = new RegExp( " [^0-9X] " );
if (s = zjhm2.match(re)) // 18位身份证对末位要求数字或字符
{
alert( " 输入的值中含有非法字符' " + s + " '请检查! " );
return 0 ;
}
birthday = zjhm.substr( 6 , 8 );
}
birthday = birthday.substr( 0 , 4 ) + " - " + birthday.substr( 4 , 2 ) + " - " + birthday.substr( 6 , 2 )
// alert("birthday"+birthday)
if (isDate( " 证件号码 " ,birthday) == 0 ) // 检查日期的合法性
{
return 0 ;
}
if (zjhm.length == 18 )
{
return (sfzCheck(zjhm)); // 对18位长的身份证进行末位校验
}
}
else
{ if (zjhm.length > 17 ) {
alert( " 非‘居民身份证’长度不得超过17位,请检查! " ) ;
return 0 ;
}
}
return 1 ;
}
function id15to18(zjhm)
{
var strJiaoYan = new Array( " 1 " , " 0 " , " X " , " 9 " , " 8 " , " 7 " , " 6 " , " 5 " , " 4 " , " 3 " , " 2 " );
var intQuan = new Array( 7 , 9 , 10 , 5 , 8 , 4 , 2 , 1 , 6 , 3 , 7 , 9 , 10 , 5 , 8 , 4 , 2 , 1 );
var ll_sum = 0 ;
var i;
var ls_check;
zjhm = zjhm.substring( 0 , 6 ) + " 19 " + zjhm.substring( 6 );
for (i = 0 ;i <= 16 ;i ++ ) {
ll_sum = ll_sum + (parseFloat(zjhm.substr(i, 1 ))) * intQuan[i];
}
ll_sum = ll_sum % 11 ;
zjhm = zjhm + strJiaoYan[ll_sum];
return zjhm;
}
// -------------------------------
// 函数名 :check_sg(i_value)
// 参数说明:身高。
// 功能介绍:检查身高是否为数字;是否>=100,<=250
// 返回值 :1-是,0-不是
// -------------------------------
function check_sg(i_value)
{
if (isNum( " 身高 " ,i_value) == 0 ) // 检查身高是否为数字
{
return 0 ;
}
else
{
if ((i_value - 0 ) < 100 || (i_value - 0 ) > 250 )
{
alert( " '身高'合理范围应在 100--250 ! " );
return 0 ;
}
}
return 1 ;
}
// -------------------------------
// 函数名 :check_sl(i_value)
// 参数说明:视力。
// 功能介绍:检查视力是否为数字;是否>=4.9,<=5.5
// 返回值 :1-是,false-不是
// -------------------------------
function check_sl(i_value)
{
var reg = /^ (\d { 1 , 1 } )(\.)(\d { 1 , 1 } )$ / ;
if (document.all[ " zsl " ].value.length == 2 )
{
document.all[ " zsl " ].value = document.all[ " zsl " ].value.substr( 0 , 1 ) + " . " + document.all[ " zsl " ].value.substr( 1 , 1 );
}
if (document.all[ " ysl " ].value.length == 2 )
{
document.all[ " ysl " ].value = document.all[ " ysl " ].value.substr( 0 , 1 ) + " . " + document.all[ " ysl " ].value.substr( 1 , 1 );
}
var r = document.all[ " zsl " ].value.match(reg);
var r1 = document.all[ " ysl " ].value.match(reg);
if (r == null )
{
alert( " 左视力的格式应为:x.x ! " )
return 0 ;
}
if (r1 == null )
{
alert( " 右视力的格式应为:x.x ! " )
return 0 ;
}
if ((document.all[ " zsl " ].value - 0 ) < 4.9 || (document.all[ " zsl " ].value - 0 ) > 5.5 )
{
alert( " '左视力'应在 4.9--5.5 范围! " );
return 0 ;
}
if ((document.all[ " ysl " ].value - 0 ) < 4.9 || (document.all[ " ysl " ].value - 0 ) > 5.5 )
{
alert( " '右视力'应在 4.9--5.5 范围! " );
return 0 ;
}
return 1 ;
}
// -------------------------------
// 函数名:isHg(bsl,tl,sz,qgjb)
// 功能介绍:辨色力,听力,上肢,躯干颈部是否合格
// 参数说明:辨色力,听力,上肢,躯干颈部
// 返回值 :1-符合申请,0-不符合
// -------------------------------
function isHg(bsl,tl,sz,qgjb)
{ // alert(bsl+tl+sz+qgjb)
if ( ! (bsl == 1 ))
{
alert( " '辨色力'不合格者不能申请! " );
return 0 ;
}
if ( ! (tl == 1 ))
{
alert( " '听力'不合格者不能申请! " );
return 0 ;
}
if ( ! (sz == 1 ))
{
alert( " '上肢'不合格者不能申请! " );
return 0 ;
}
if ( ! (qgjb == 1 ))
{
alert( " '躯干颈部'不合格者不能申请! " );
return 0 ;
}
if ((document.all[ " yxz " ].value) == 0 )
{
alert( " 右下肢必须合格! " )
document.all.yxz.focus();
return 0 ;
}
return 1 ;
}
// -------------------------------
// 函数名:sfzCheck(hm)
// 功能介绍:对18位长的身份证进行末位校验
// 参数说明:身份证号码
// 返回值 :1-符合,0-不符合
// -------------------------------
function sfzCheck(hm)
{
var w = new Array();
var ll_sum;
var ll_i;
var ls_check;
if (hm.length == 15 ) // 长度15,直接返回true
return true ;
if (hm.length != 15 && hm.length != 18 ) {
alert( " 身份证号码长度不正确 " );
return false ;
}
w[ 0 ] = 7 ;
w[ 1 ] = 9 ;
w[ 2 ] = 10 ;
w[ 3 ] = 5 ;
w[ 4 ] = 8 ;
w[ 5 ] = 4 ;
w[ 6 ] = 2 ;
w[ 7 ] = 1 ;
w[ 8 ] = 6 ;
w[ 9 ] = 3 ;
w[ 10 ] = 7 ;
w[ 11 ] = 9 ;
w[ 12 ] = 10 ;
w[ 13 ] = 5 ;
w[ 14 ] = 8 ;
w[ 15 ] = 4 ;
w[ 16 ] = 2 ;
ll_sum = 0 ;
for (ll_i = 0 ;ll_i <= 16 ;ll_i ++ )
{ // alert("ll_i:"+ll_i+" "+hm.substr(ll_i,1)+"w[ll_i]:"+w[ll_i]+" ll_sum:"+ll_sum);
ll_sum = ll_sum + (hm.substr(ll_i, 1 ) - 0 ) * w[ll_i];
}
ll_sum = ll_sum % 11 ;
switch (ll_sum)
{
case 0 :
ls_check = " 1 " ;
break ;
case 1 :
ls_check = " 0 " ;
break ;
case 2 :
ls_check = " X " ;
break ;
case 3 :
ls_check = " 9 " ;
break ;
case 4 :
ls_check = " 8 " ;
break ;
case 5 :
ls_check = " 7 " ;
break ;
case 6 :
ls_check = " 6 " ;
break ;
case 7 :
ls_check = " 5 " ;
break ;
case 8 :
ls_check = " 4 " ;
break ;
case 9 :
ls_check = " 3 " ;
break ;
case 10 :
ls_check = " 2 " ;
break ;
}
if (hm.substr( 17 , 1 ) != ls_check)
{
alert( " 身份证校验错误!------ 末位应该: " + ls_check + " 实际: " + hm.substr(hm.length - 1 , 1 ));
return 0 ;
}
return 1
}
function comm_check() {
if (document.all[ " xm " ].value.length < 2 )
{
document.all[ " xm " ].focus();
alert( " '姓名'长度至少两汉字! " );
return 0 ;
}
if (document.all[ " lxdh " ].value.length < 6 )
{
document.all[ " lxdh " ].focus();
alert( " '联系电话'长度至少6位! " );
return 0 ;
}
return 1 ;
}
// -------------------------------
// 函数名 :check_zjcx(s_value,s_cx_dm)
// 参数说明:准驾车型字符串,合法的准驾车行字符串数组。
// 功能介绍:检查车型输入是否正确,只检查是否包含合法的准驾车行字符串,重复、次序颠倒不认为是错误
// 返回值 :1-包含合法的准驾车行,0-不合法
//
// 戴嘉 2004.05.12
// -------------------------------
function check_zjcx(s_value,s_cx_dm)
{
// 合法的准驾车行字符串数组
// var s_cx_dm=new Array("A1","A2","A3","B1","B2","C1","C2","C3","C4","D","E","F","M","N","P");
// 字符串数组的长度
var s_cx_input; // 存放需要检验的字符串
var i_pos; // 查找子串定位
var i;
s_cx_input = s_value;
for (i in s_cx_dm) // 对合法准驾车行字符串数组轮循
{
do
{
i_pos = s_cx_input.indexOf(s_cx_dm[i]); // 是否包含当前车型
if (i_pos !=- 1 ) // 包含
{
// 去掉找到的子串
s_cx_input = s_cx_input.slice( 0 ,i_pos) + s_cx_input.slice(i_pos + s_cx_dm[i].length);
}
} while (i_pos !=- 1 ); // 找不到当前车型子串,进入下一车型子串查找
}
if (s_cx_input.length == 0 ) // 输入字符串包含的都是合法的车型子串(全部被去掉了)
return 1 ;
else // 输入字符串还包含有非法的字符串
return 0 ;
}
// -------------------------------
// 函数名:DateAddMonth(strDate,iMonths)
// 功能介绍:获得日期加上iMonths月数后的日期
// 参数说明:strDate 日期
// 返回值 :无返回值
// -------------------------------
function DateAddMonth(strDate,iMonths) {
var thisYear = parseFloat(strDate.substring( 0 , 4 ));
var thisMonth = parseFloat(strDate.substring( 5 , 7 ));
var thisDate = parseFloat(strDate.substring( 8 , 10 ));
var d = thisYear * 12 + thisMonth + iMonths;
var newMonth = d % 12 ;
if (newMonth == 0 ) {
newMonth = 12 ;
}
var newYear = (d - newMonth) / 12 ;
var newDate = thisDate;
var iMonthLastDate = getMonthLastDate(newYear,newMonth)
if (newDate > iMonthLastDate) newDate = iMonthLastDate;
var newDay = "" ;
newDay += newYear;
if (newMonth < 10 ) {
newDay += " - " + " 0 " + newMonth;
} else {
newDay += " - " + newMonth;
}
if (newDate < 10 ) {
newDay += " - " + " 0 " + newDate;
} else {
newDay += " - " + newDate;
}
return (newDay); // 返回日期。
}
function getMonthLastDate(iYear,iMonth) {
var dateArray = new Array( 31 , 28 , 31 , 30 , 31 , 30 , 31 , 31 , 30 , 31 , 30 , 31 );
var days = dateArray[iMonth - 1 ];
if ((((iYear % 4 == 0 ) && (iYear % 100 != 0 )) || (iYear % 400 == 0 )) && iMonth == 2 ) {
days = 29 ;
}
return days;
}
var keyvalue = "" ;
var srcStr = " ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789 " ;
var objName = "" ;
function findCode(event,obj)
{
if (objName != obj.name) {
objName = obj.name;
keyvalue = "" ;
}
if (event.keyCode == 13 || event.keyCode == 9 ) {
keyvalue = "" ;
return true ;
}
// if(srcStr.indexOf(String.fromCharCode(event.keyCode))!=-1)
// keyvalue="";
keyvalue = keyvalue + String.fromCharCode(event.keyCode).toUpperCase();
// alert(keyvalue);
for ( var i = 0 ;i < obj.options.length;i ++ )
{
if (obj.options[i].value.indexOf(keyvalue) !=- 1 )
{
obj.value = obj.options[i].value;
if (obj.options[i].value == keyvalue) {
objName = ""
}
return true ;
}
}
}
function findName(event,obj) // 根据代码取名称
{
if (objName != obj.name) {
objName = obj.name;
keyvalue = "" ;
}
if (event.keyCode == 13 || event.keyCode == 9 ) {
keyvalue = "" ;
return true ;
}
// if(srcStr.indexOf(String.fromCharCode(event.keyCode))!=-1)
// keyvalue="";
keyvalue = keyvalue + String.fromCharCode(event.keyCode).toUpperCase();
// alert(keyvalue);
// alert(obj.options.length);
for ( var i = 0 ;i < obj.options.length;i ++ )
{
// alert(obj.options[i].text);
if (obj.options[i].text.indexOf(keyvalue) !=- 1 )
{
obj.value = obj.options[i].value;
return true ;
}
}
}
// 自动清除输入框中的空格
function ignoreSpaces(string) {
var temp = "" ;
string = '' + string;
splitstring = string.split( " " ); // 双引号之间是个空格;
for (i = 0 ; i < splitstring.length; i ++ )
temp += splitstring[i];
return temp;
}
/**/ /*
文件名: function.js
功 能: 常用的功能库
功能块:
更 新: 金永俊 2004年4月16日
戴嘉 2004.05.20
*/
var todaystr;
todaystr = new Date();
// -------------------------------
// 函 数 名:cal_years(rq)
// 功能介绍:计算指定日期到今天是多少年.
// 参数说明:日期
// 返 回:年数
// -------------------------------
function cal_years(rq)
{
var years;
// var dDate = new Date(); //系统日期(系统日期应该大于rq)
var dDate = todaystr;
var month1 = dDate.getMonth() + 1 ;
var year1 = dDate.getFullYear();
var day1 = dDate.getDate()
var year2 = rq.substr( 0 , 4 );
var month2 = rq.substr( 5 , 2 );
var day2 = rq.substr( 8 , 2 );
// alert("-----------dDate-"+dDate+" year1"+year1+" month1"+month1+" day1"+day1);
years = year1 - year2 - 0 ;
if (month2 > month1) // 月份未到,years-1
{
years = years - 1 ;
}
else
{
if ( (month1 == month2) && (day2 > day1)) // 月份到了,但日未到,years-1
{
years = years - 1 ;
}
}
// alert("-----------years-"+years);
return years;
}
// -------------------------------
// 函 数 名:cal_years1(rq1,rq2)
// 功能介绍:计算指定日期到今天是多少年.(rq1-rq2)
// 参数说明:日期1,日期2
// 返 回:年数
// -------------------------------
function cal_years1(rq1,rq2)
{
var years;
var year1 = rq1.substr( 0 , 4 );
var month1 = rq1.substr( 5 , 2 );
var day1 = rq1.substr( 8 , 2 );
var year2 = rq2.substr( 0 , 4 );
var month2 = rq2.substr( 5 , 2 );
var day2 = rq2.substr( 8 , 2 );
// alert("-----------dDate-"+dDate+" year1"+year1+" month1"+month1+" day1"+day1);
years = year1 - year2 - 0 ;
if (month2 > month1) // 月份未到,years-1
{
years = years - 1 ;
}
else
{
if ( (month1 == month2) && (day2 > day1)) // 月份到了,但日未到,years-1
{
years = years - 1 ;
}
}
// alert("-----------years-"+years);
return years;
}
// -------------------------------
// 函 数 名:cal_days(rq1,rq2)
// 功能介绍:计算两个日期间隔天数(要求rq2>=rq1).
// 参数说明:日期1,日期2
// 返 回:天数
// -------------------------------
function cal_days(rq1,rq2)
{ var d, s, t, d1 , d2, s1 , s2;
var DyMilli = 24 * 60 * 60 * 1000 ; // 一天的毫秒数
// d = new Date();
d = todaystr
s = d.getTime(); // 系统日期与 1970 年 1 月 1 日午夜间全球标准时间 的毫秒数
var days;
// 系统日期、年、月、日
// var dDate = new Date();
var dDate = todaystr
var month = dDate.getMonth() + 1 ;
var year = dDate.getFullYear();
var day = dDate.getDate();
d = new Date(year,month - 1 ,day);
s = d.getTime()
var month1;
var month2;
var year1;
var year2;
var day1;
var day2;
if (rq1 == "" )
{
s1 = s;
month1 = month;
year1 = year;
day1 = day;
}
else
{
year1 = rq1.substr( 0 , 4 );
month1 = rq1.substr( 5 , 2 );
day1 = rq1.substr( 8 , 2 );
d1 = new Date(year1,month1 - 1 ,day1);
s1 = d1.getTime();
}
if (rq2 == "" )
{
s2 = s;
month2 = month;
year2 = year;
day2 = day;
}
else
{
year2 = rq2.substr( 0 , 4 );
month2 = rq2.substr( 5 , 2 );
day2 = rq2.substr( 8 , 2 );
d2 = new Date(year2,month2 - 1 ,day2);
s2 = d2.getTime();
}
// alert("rq1:"+rq1+" rq2:"+rq2+" y1:"+year1+" y2:"+year2+" m1:"+month1+" m2:"+month2+" d1:"+day1+" d2:"+day2);
days = Math.round((s2 - s1) / DyMilli);;
// alert("days:"+days);
return days;
}
// -------------------------------
// 函 数 名:get_checkbox(get_item)
// 功能介绍:取复选框的内容.
// 参数说明:复选框的数组名
// 返 回:复选框的值
// -------------------------------
function get_checkbox(get_item)
{
var get_item_content
get_item_content = ""
var item_length = get_item.length
// alert(item_length)
for ( var i = 0 ;i < item_length;i ++ )
{
if (get_item.item(i).checked)
{
// alert(get_item.item(i).value)
get_item_content = get_item_content + get_item.item(i).value
}
}
return get_item_content;
}
// -------------------------------
// 函 数 名:set_checkbox(set_item,s_value)
// 功能介绍:设置复选框数组的内容.
// 参数说明:复选框的控件数组对象,表示状态的字符串(checkbox的value值)
// 返 回:设置的复选框数量
//
// 戴嘉 2004.05.11
// -------------------------------
function set_checkbox(set_item,s_value)
{
var i,j; // 循环计数器,i-控件数组循环,j-字符串值位置控制
// 轮循状态字符串
for (j = 0 ;j < s_value.length;j ++ )
{
// 轮循控简数组
for (i = 0 ;i < set_item.length;i ++ )
{
if (set_item.item(i).value == s_value.substr(j, 1 ))
{
set_item.item(i).checked = true ;
break ;
}
}
}
return j;
}
// -------------------------------
// 函 数 名:bulidXzqh(obj,Opt_name,Opt_value)
// 功能介绍:构建新的所属辖区下拉列表
// 参数说明:日期1,日期2
// 返 回:
// -------------------------------
function bulidXzqh(obj,Opt_name,Opt_value)
{
var n1
if (Opt_name.length > 0 )
{
n1 = document.createElement( " OPTION " )
n1.value = Opt_value
n1.text = Opt_name
obj.add(n1)
var i = obj.length - 1
obj.options[i].selected = true
}
}
// ----------构建下拉列表--------------
function buildList(get_xml_id,put_id,view_type)
{
var xmldoc,theNode,code1Node;
var get_list,get_list_code,get_list_value
var str1 = " document.all. " + get_xml_id + " .XMLDocument "
xmldoc = eval(str1)
xmldoc.async = false
// xmldoc=eval("document.all."+get_xml_id+".XMLDocument")
// 取类型
var str2 = " xmldoc.getElementsByTagName(\ " Codes\ " ) "
// get_list=eval("xmldoc.getElementsByTagName(\""+get_type_name +"\")")
get_list = eval(str2)
// get_list_code=get_list.item(0).getElementsByTagName("code")
// get_list_value=get_list.item(0).getElementsByTagName("value")
if (view_type == null || view_type == "" ) {view_type = " 0 " } // 缺省
// 显示名称,保存名称,view_type=="2"
if (view_type == " 2 " )
{
for ( var i = 0 ;i < get_list.length;i ++ )
{
var str3 = " document.all[\ "" +put_id+ " \ " ].options[i]=new Option(get_list.item(i).lastChild.text,get_list.item(i).lastChild.text) "
// alert(str3)
eval(str3)
// eval("document.all[\""+put_id+"\"].options[i]=new Option(get_list_value.item(i).text,get_list_code.item(i).text")
}
}
// 显示时带代码,view_type=="1"
if (view_type == " 1 " )
{
for ( var i = 0 ;i < get_list.length;i ++ )
{
var str3 = " document.all[\ "" +put_id+ " \ " ].options[i]=new Option(get_list.item(i).firstChild.text+get_list.item(i).lastChild.text,get_list.item(i).firstChild.text) "
// alert(str3)
eval(str3)
// eval("document.all[\""+put_id+"\"].options[i]=new Option(get_list_value.item(i).text,get_list_code.item(i).text")
}
}
if (view_type == " 0 " )
{
// 显示时不带代码,view_type=="0"
for ( var i = 0 ;i < get_list.length;i ++ )
{
var str3 = " document.all[\ "" +put_id+ " \ " ].options[i]=new Option(get_list.item(i).lastChild.text,get_list.item(i).firstChild.text) "
// alert(str3)
eval(str3)
// eval("document.all[\""+put_id+"\"].options[i]=new Option(get_list_value.item(i).text,get_list_code.item(i).text")
}
}
}
// ----------建立复选列表(准驾必备和提交资料)--------------
function build_checkbox(get_xml_id,put_id,checkbox_name)
{
var xmldoc,theNode,code1Node;
var get_list,get_list_code,get_list_value
var str1 = " document.all. " + get_xml_id + " .XMLDocument "
xmldoc = eval(str1)
var htmlstr = ""
// 取类型
var str2 = " xmldoc.getElementsByTagName(\ " Codes\ " ) "
get_list = eval(str2)
for ( var i = 0 ;i < get_list.length;i ++ )
{
htmlstr = htmlstr + " <input type=\ " checkbox\ " name=\ "" +checkbox_name+ " \ " value=\ "" +get_list.item(i).firstChild.text+ " \ " > " + get_list.item(i).lastChild.text
}
var str3 = " document.all. " + put_id + " .innerHTML=htmlstr "
// alert( htmlstr)
eval(str3)
}
// ----------整理提交资料项目--------------
function get_checkbox1(get_item,put_id)
{
var get_item_content
get_item_content = ""
var item_length = get_item.length
// alert(item_length)
for ( var i = 0 ;i < item_length;i ++ )
{
if (get_item.item(i).checked)
{
// alert(get_item.item(i).value)
get_item_content = get_item_content + get_item.item(i).value
}
}
alert(get_item_content);
var the_str = " document.all[\ "" +put_id+ " \ " ].value=get_item_content "
// document.all["get_tjzl"].value=get_item_content
eval(the_str)
}
/**/ /* 多项选择checkbox的逆过程
box_value 为字符串
box_name checkbox的name
2003-05-10
*/
function back_checkbox(box_name,box_value)
{
var box_length
var item_value
var obj_str
var obj
obj_str = " document.all[\ "" +box_name+ " \ " ] "
obj = eval(obj_str)
box_length = obj.length
for ( var i = 0 ;i < box_length;i ++ )
{
item_value = obj.item(i).value
if (box_value.indexOf(item_value) >- 1 )
{
obj.item(i).checked = true
}
}
}
function decode_from_xml(xml_id,the_code) // 代码翻译
{
var de_code = ""
var str,obj
str = " document.all[\ "" +xml_id+ " \ " ] "
obj = eval(str)
while ( ! obj.recordset.EOF)
{
var code = obj.recordset( " code " )
if (code == the_code)
{
de_code = new String(obj.recordset( " Value " ))
}
obj.recordset.moveNext();
}
obj.recordset.moveFirst();
return de_code;
}
function decode_self(the_code)
{
var de_code
de_code = ""
if (the_code == " 1 " )
{
de_code = " 合格 " ;
}
else
{
de_code = " 不合格 " ;
}
return de_code;
}
// ----------构建可管理车型下拉列表--------------
function glcx_list(get_xml_id,glcx,put_id)
{
var xmldoc,theNode,code1Node;
var get_list,get_list_code,get_list_value
var str1 = " document.all. " + get_xml_id + " .XMLDocument "
// alert(str1)
xmldoc = eval(str1)
xmldoc.async = false
// alert(xmldoc.xml)
// 取类型
var str2 = " xmldoc.getElementsByTagName(\ " Codes\ " ) "
get_list = eval(str2)
// alert("AAA:"+get_list.length)
var j = 0
for ( var i = 0 ;i < get_list.length;i ++ )
{
if (glcx.indexOf(get_list.item(i).firstChild.text) >- 1 )
{
var str3 = " document.all[\ "" +put_id+ " \ " ].options[j]=new Option(get_list.item(i).firstChild.text+get_list.item(i).lastChild.text,get_list.item(i).firstChild.text) "
eval(str3)
j = j + 1
}
}
}
function cReadonly(obj) {
if (obj.type == " text " ) {
obj.readOnly = true
obj.parentElement.className = " readonly "
} else {
obj.parentElement.className = " readonly "
}
}
function cEditable(obj) {
if (obj.type == " text " ) {
obj.readOnly = false
obj.parentElement.className = " editable "
} else {
obj.parentElement.className = " editable "
}
}
// -------------------------------
// 函数名:jstrim(s_value)
// 功能介绍:去掉s_value两端的空格
// 参数说明:被操作的字符串
// 返回值 :处理结果字符串
// -------------------------------
function jstrim(s_value)
{
var i;
var ibegin;
for (i = 0 ;i < s_value.length;i ++ )
{
if (s_value.charAt(i) != ' ')
break ;
}
if (i == s_value.length)
return "" ;
else
ibegin = i;
for (i = s_value.length - 1 ;i >= 0 ;i -- )
{
if (s_value.charAt(i) != ' ')
break ;
}
return s_value.substr(ibegin,i - ibegin + 1 );
}
// -------------------------------
// 函数名:trimall()
// 功能介绍:去掉document的所有form里面的所有的input(text)里面的两端空格
// 参数说明:无
// 返回值 :无
// -------------------------------
function trimall()
{
var i,j;
var allforms;
var myelement;
allforms = document.forms;
for (i = 0 ;i < allforms.length;i ++ )
{
for (j = 0 ;j < allforms(i).elements.length;j ++ )
{
myelement = allforms(i).elements(j);
if (myelement.type == " text " )
// myelement.value=jstrim(myelement.value.toUpperCase());
myelement.value = jstrim(myelement.value);
}
}
}
// -------------------------------
// 函数名:
// 功能介绍:日期加年
// 参数说明:无
// 返回值 :无
// -------------------------------
function rqaddyears(rq1,ns)
{
if (rq1.length == 10 ) {
y = parseInt(rq1.substring( 0 , 4 )) + ns
m = parseInt(rq1.substring( 5 , 7 ))
d = parseInt(rq1.substring( 8 , 10 ))
} else if (rq1.length == 8 ) {
y = parseInt(rq1.substring( 0 , 4 )) + ns
m = parseInt(rq1.substring( 4 , 6 ))
d = parseInt(rq1.substring( 6 , 8 ))
} else {
return "" ;
}
var str = y + rq1.substring( 4 , 10 );
if (m == 2 && d == 29 ) {
str = y + rq1.substring( 4 , 7 ) + " -28 " ;
}
return str
}
// 光标移动至最后
function movelast()
{
var e = event.srcElement;
var r = e.createTextRange();
r.moveStart('character',e.value.length);
r.collapse( true );
r.select();
}
// 翻译obj(select)中的值
function trancode(obj,val) {
for ( var i = 0 ;i < obj.length;i ++ ) {
var tmp
tmp = obj.options(i).text
tmp = tmp.substr((tmp.indexOf( " : " ) + 1 ),tmp.length - tmp.indexOf( " : " ) - 1 )
if (obj.options(i).value == val) {
return tmp
}
}
return ""
}
// -------------------------------
// 函数名:DateAddMonth(strDate,iMonths)
// 功能介绍:获得日期加上iMonths月数后的日期
// 参数说明:strDate 日期
// 返回值 :无返回值
// -------------------------------
function DateAddMonth(strDate,iMonths) {
var thisYear = parseFloat(strDate.substring( 0 , 4 ));
var thisMonth = parseFloat(strDate.substring( 5 , 7 ));
var thisDate = parseFloat(strDate.substring( 8 , 10 ));
var d = thisYear * 12 + thisMonth + parseFloat(iMonths);
var newMonth = d % 12 ;
if (newMonth == 0 ) {
newMonth = 12 ;
}
var newYear = (d - newMonth) / 12 ;
var newDate = thisDate;
var iMonthLastDate = getMonthLastDate(newYear,newMonth)
if (newDate > iMonthLastDate) newDate = iMonthLastDate;
var newDay = "" ;
newDay += newYear;
if (newMonth < 10 ) {
newDay += " - " + " 0 " + newMonth;
} else {
newDay += " - " + newMonth;
}
if (newDate < 10 ) {
newDay += " - " + " 0 " + newDate;
} else {
newDay += " - " + newDate;
}
return (newDay); // 返回日期。
}
function getMonthLastDate(iYear,iMonth) {
var dateArray = new Array( 31 , 28 , 31 , 30 , 31 , 30 , 31 , 31 , 30 , 31 , 30 , 31 );
var days = dateArray[iMonth - 1 ];
if ((((iYear % 4 == 0 ) && (iYear % 100 != 0 )) || (iYear % 400 == 0 )) && iMonth == 2 ) {
days = 29 ;
}
return days;
}
// ####################################
// 保存客户信息
//
//
// #####################################
function getcookie(nKey) {
var search = nKey + " = " ;
begin = document.cookie.indexOf(search);
if (begin !=- 1 ) {
begin += search.length
end = document.cookie.indexOf( " ; " ,begin);
if (end ==- 1 ) {
end = document.cookie.length;
}
return document.cookie.substring(begin,end)
} else {
return ""
}
}
function setcookie(nKey,nVal) {
document.cookie = nKey + " = " + nVal + " ;expires=wednesday,09-oct-2099 23:00:00 GMT "
}
function disableall()
{
var i,j;
var allforms;
var myelement;
allforms = document.forms;
for (i = 0 ;i < allforms.length;i ++ )
{
for (j = 0 ;j < allforms(i).elements.length;j ++ )
{
myelement = allforms(i).elements(j);
if (myelement.type == " text " )
// myelement.value=jstrim(myelement.value.toUpperCase());
// myelement.value=jstrim(myelement.value);
myelement.readOnly = true ;
}
}
}
function selectedObj(obj,value) {
var i = obj.length;
for (index = 0 ;index < i;index ++ ) {
if (obj.options[index].value == value)
{
obj.options[index].selected = true ;
break ;
}
}
}
function getSelectedObjText(obj) {
return obj.options[obj.selectedIndex].text;
}