/*******************************
** 表单验证
使用说明:
在使用表单的页面填入如下script
<script language="JavaScript" type="text/javascript" src="../css/form.js">
</script>
<script language="JavaScript" type="text/JavaScript">
function checkForm(theForm) { //v2.0
  if (!checkNotNull(theForm.name,"姓名")) return false;
  if (!checkNumber(theForm.age,"年龄")) return false;
  ...
  return true;
}
</script>

注意:checkNumber(),checkLength()等方法并不检查是否为空

<FORM name="form1" acton="..." onSubmit="return checkForm(document.form1)">
...
<input type="submit" name="Submit" value="Submit">
</FORM>
********************************/
//////////////////////////////////////////////////////////////////////////////
///////////////系统常用javascriptfunction/////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
///////////////////

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////
function entertab(v)
{
if (event.keyCode==13) 
{
if (v=="")
window.event.returnValue=0;
else
event.keyCode=9;
}

}
//清空：页面中checked
function checkAll(){
  var coll=document.forms["form1"].tags("input");
    for (i=0;i<coll.length;i++){
	    if (coll.item(i).name.substr(0,1)=="0") {
			    coll.item(i).checked=false;
		 }
		}
}
//全选：页面中checked
function change(v){ 
  var f = document.forms["form1"];
  for (i=0;i<f.elements.length;i++){
    if (f.elements[i].name.substr(0,1)=="0")
       f.elements[i].checked = v;
    
   }
}
//删除所在选择项：页面中的checked为true,须在页面中加一个隐含的delid项
function delrecord(){
  var coll=document.forms["form1"].tags("input");
  var delids="";
    for (i=0;i<coll.length;i++){
	    if (coll.item(i).name.substr(0,1)=="0") {
		 if  (coll.item(i).checked==true){
               delids=delids+coll.item(i).value+",";
                    }

		 }
   }
  document.form1.delids.value=delids;
  if (delids==""){
     alert("请选择删除选项！");   
   }else {  
   document.form1.submit();//提交
}

}
//审核所在选择项：页面中的checked为true,须在页面中加一个隐含的delid项
function checkrecord(){
  var coll=document.forms["form1"].tags("input");
  var delids="";
    for (i=0;i<coll.length;i++){
	    if (coll.item(i).name.substr(0,1)=="0") {
		 if  (coll.item(i).checked==true){
               delids=delids+coll.item(i).value+",";
                    }

		 }
   }
  document.form1.delids.value=delids;
  if (delids==""){
     alert("请选择审核选项！");   
   }else { 
   document.form1.checks.value=1;
   document.form1.submit();//提交
}
}
//审核所在选择项：页面中的checked为true,须在页面中加一个隐含的delid项  管理岗送考试岗
function Gcheckrecord(){
  var coll=document.forms["form1"].tags("input");
  var delids="";
    for (i=0;i<coll.length;i++){
	    if (coll.item(i).name.substr(0,1)=="0") {
		 if  (coll.item(i).checked==true){
               delids=delids+coll.item(i).value+",";
                    }

		 }
   }
  document.form1.delids.value=delids;
  if (delids==""){
     alert("请选择审核选项！");   
   }else { 
   document.form1.checks.value=2;
   document.form1.submit();//提交
}
}
//删除所在选择项：页面中的checked为true,须在页面中加一个隐含的delid项
function Rdelrecord(){
  var coll=document.forms["form1"].tags("input");
  var delids="";
  var workids="";
  var str="";
    for (i=0;i<coll.length;i++){
	    if (coll.item(i).name.substr(0,1)=="0") {
		 if  (coll.item(i).checked==true){
		 		str = coll.item(i).value;
				var tmp=str.split(",");
               	delids=delids + tmp[0] + ",";
               	workids=workids + tmp[1] + ",";
                    }

		 }
   }
  document.form1.delids.value=delids;
  document.form1.workids.value=workids;
  if (delids==""){
     alert("请选择删除选项！");   
   }else {  
   document.form1.submit();//提交
}

}
//审核所在选择项：页面中的checked为true,须在页面中加一个隐含的delid项
function Rcheckrecord(){
  var coll=document.forms["form1"].tags("input");
  var delids="";
  var workids="";
  var str="";
    for (i=0;i<coll.length;i++){
	    if (coll.item(i).name.substr(0,1)=="0") {
		 if  (coll.item(i).checked==true){
		 		str = coll.item(i).value;
				var tmp=str.split(",");
               	delids=delids + tmp[0] + ",";
               	workids=workids + tmp[1] + ",";
                    }

		 }
   }
  document.form1.delids.value=delids;
  document.form1.workids.value=workids;
  if (delids==""){
     alert("请选择审核选项！");   
   }else { 
   document.form1.checks.value=1;
   document.form1.submit();//提交
}

}
//传附件调用文件 
//参数据：fname：显示名称的名称，fid：显示名称代码的名称
function fileselect(fname,fid) {
var return_value=showModalDialog("../public/upload/file.jsp?names="+fname.value+"&ids="+fid.value+"","","dialogWidth:37;dialogHeight:12;dialogTop:250;dialogLeft:230;status:no;scrollbars:no;help:no");
if((typeof(return_value)=="undefined"))
  return;
else
  var str1="";
  var str2="";
  tmpstr=return_value.split("*");
  str1=tmpstr[0];
  str2=tmpstr[1];
fname.value=str1;
fid.value=str2;
}
//传多个附件调用文件 
//参数据：fname：显示名称的名称，fid：显示名称代码的名称
function morefileselect(fname,fid) {
var return_value=showModalDialog("../public/upload/morefile.jsp?names="+fname.value+"&ids="+fid.value+"","","dialogWidth:37;dialogHeight:14;dialogTop:250;dialogLeft:230;status:no;scrollbars:no;help:no");
if((typeof(return_value)=="undefined"))
  return;
else
  var str1="";
  var str2="";
  tmpstr=return_value.split("*");
  str1=tmpstr[0];
  str2=tmpstr[1];
fname.value=str1;
fid.value=str2;
}
/////////////////////////////
//////////显示和关闭查询
function showadv(schange){ 
   if (document.form1.checks.value==0){
      eval(schange+".style.display = '';");
      document.form1.checks.value=1;
    }
   else {
      eval(schange+".style.display = 'none';");
       //adv.style.display = "none";
      document.form1.checks.value=0;
    }

}


////////////////////////////////////////////////////////////////////////////
/////////让光标停在得到焦点框的最后
function  endfocus()      
{      
   var  e  =  event.srcElement;      
   var  r  =e.createTextRange();      
   r.moveStart('character',e.value.length);      
   r.collapse(true);      
   r.select();      
} 

// 是否为空，非空返回真，不非为空返回假
function isBlank(str) {
	var blankFlag = true;
	if (str.length == 0) return true;
	for (var i = 0; i < str.length; i++) {
		if ((str.charAt(i) != "") && (str.charAt(i) != " ")) {
			blankFlag = false;
			break;
		}
	}
	return blankFlag;
}

function checkNotNull(theField, fieldName) {
	
	if(isBlank(theField.value)){
		alert(fieldName + "不可为空！");
		theField.focus();
		return false;
	}

	return true;
}

// 是否为数字
function checkNumber(theField, fieldName) {
 	var pattern = /^([0-9]|(-[0-9]))[0-9]*((\.[0-9]+)|([0-9]*))$/;

 	if(theField.value == "") return  true;
 	if (!pattern.test(theField.value)) {
 		alert(fieldName + "必须为合法数字");
 		theField.focus();
 		theField.select();
 		return false;
 	}

	return true;
}


// 是否为数字
function checkNumSpace(theField, fieldName) {
 	var pattern = /^([0-9]|(-[0-9]))[0-9]*((\.[0-9]+)|([0-9]*))$/;

 	if(theField.value == "") return false;
 	if (!pattern.test(theField.value)) {
 		alert(fieldName + "必须为合法数字");
 		theField.focus();
 		theField.select();
 		return false;
 	}

	return true;
}

// 是否为指定范围数字
function checkNumberRange(theField, fieldName, min, max) {
	if(theField.value == "") return true;
	if (!checkNumber(theField, fieldName)) return false;

	if ((min != "") && (theField.value < min)) {
		alert(fieldName + "不可小于" + min + "！");
		theField.focus();
		theField.select();
		return false;
	}

	if ((max != "") && (theField.value > max)) {
		alert(fieldName + "不可超过" + max + "！");
		theField.focus();
		theField.select();
		return false;
	}

	return true;
}
// 是否包含关键字/

function checkcontain() {
if (document.form1.DHomeAdd.value.search("/") != -1){
	alert ("字符【/】为系统关键字不可使用，请修改!!!");
	document.form1.DHomeAdd.focus();
	return false;
}
if (document.form1.DLinkAdd.value.search("/") != -1){
	alert ("字符【/】为系统关键字不可使用，请修改!!!");
	document.form1.DLinkAdd.focus();
	return false;
}
if (document.form1.DLinkTel.value.search("/") != -1){
	alert ("字符【/】为系统关键字不可使用，请修改!!!");
	document.form1.DLinkTel.focus();
	return false;
}
if (document.form1.DHandset.value.search("/") != -1){
	alert ("字符【/】为系统关键字不可使用，请修改!!!");
	document.form1.DHandset.focus();
	return false;
}
	return true;
}
// 是否包含关键字/
function checkcontainsml() {
if (document.form1.DLinkTel.value.search("/") != -1){
	alert ("字符【/】为系统关键字不可使用，请修改!!!");
	document.form1.DLinkTel.focus();
	return false;
}
if (document.form1.DHandset.value.search("/") != -1){
	alert ("字符【/】为系统关键字不可使用，请修改!!!");
	document.form1.DHandset.focus();
	return false;
}
	return true;
}
// 是否为整数
function checkInteger(theField, fieldName) {
	var pattern = /^(\d|(-\d))\d*$/;

	if(theField.value == "") return true;
	if (!pattern.test(theField.value)) {
		alert(fieldName + "必须为整数！");     
		theField.focus();
		theField.select();
		return false;
	}

	return true;
}

// 是否为指定范围内整数
function checkIntegerRange(theField, fieldName, min, max) {
	if(theField.value == "") return true;
	if (!checkInteger(theField, fieldName)) return false;

	if ((min != "") && (theField.value < min)) {
		alert(fieldName + "不可小于" + min + "！");
		theField.focus();
		theField.select();
		return false;
	}

	if ((max != "") && (theField.value > max)) {
		alert(fieldName + "不可超过" + max + "！");
		theField.focus();
		theField.select();
		return false;
	}

	return true;
}

// 是否为正数
function checkPositiveNumber(theField, fieldName) {
	if(theField.value == "") return true;
	if (theField.value.charAt(0) == '-') {
		alert(fieldName + "必须为正数！");
		theField.focus();
		return false;
	}

	return true;
}

// 限制字串最大长度
function checkLength(theField, fieldName, maxLength) {
	if(theField.value == "") return true;
	if (theField.value.length > maxLength) {
		alert(fieldName + "的字数最多为" + maxLength + "字！");
		theField.select();
		theField.focus();
		return false;
	}

	return true;
}

// 限制字串长度,注意参数顺序
function checkLength2(theField, fieldName, maxLength, minLength) {
	if(theField.value == "") return true;
	if (theField.value.length > maxLength) {
		alert(fieldName + "的字数最多为" + maxLength + "位！");
		theField.focus();
		return false;
	}

	if ((minLength != "") && (theField.value.length < minLength)) {
	
		alert(fieldName + "的字数最少为" + minLength + "位！");
		theField.focus();
		return false;
	}

	return true;
}

// 所输入字符串是否均为合法字符
// charBag中为包含所有合法字符的字符串
function checkStrLegal(theField, fieldName, charBag) {
	if(theField.value == "") return true;
   	for (var i = 0; i < theField.value.length; i++) {
        var c = theField.value.charAt(i);
        if (charBag.indexOf(c) == -1) {
     		alert(fieldName + "含有非法字符(" + c + ")！");
     		theField.focus();
     		return false;
        }
    }

    return true;
}

// 所输入字符串是否均为合法字符
// charBag中为包含非法字符的字符串
function checkStrLegal2(theField, fieldName, charBag) {
	if(theField.value == "") return true;
   	for (var i = 0; i < theField.value.length; i++) {
        var c = theField.value.charAt(i);
        if (charBag.indexOf(c) > -1) {
     		alert(fieldName + "含有非法字符(" + c +")！");
     		theField.focus();
     		return false;
        }
    }

    return true;
}

// 电子邮件验证
function checkEmail(theField) {
	var pattern = /^.+@.+\..+$/;

	if(theField.value == "") return true;
	if (!pattern.test(theField.value)) {
		alert("请输入合法的电子邮件地址");
		theField.focus();
		theField.select();
		return false;
	}

	return true;
}

// 是否为只读域（如file，text等域只接受右边按钮选择传回的结果）
function checkReadField() {
	alert("请点击后面的图标进行选择");
	// this.blur();
}
// 是否为只读域（如file，text等域只接受右边按钮选择传回的结果）
function tranType(drivevalue) {
   
	if (drivevalue=="G"){
		form1.DDriverType.value="大中型拖拉机";
	}
	
	if (drivevalue=="H"){
	form1.DDriverType.value="小型方向盘拖拉机";
	}
	
	if (drivevalue=="K"){
	form1.DDriverType.value="手扶式拖拉机";
	}
	if (drivevalue=="GK"){
	form1.DDriverType.value="大中型和手扶式拖拉机";
	}
	
	if (drivevalue=="HK"){
	form1.DDriverType.value="小型方向盘和手扶式拖拉机";
	}	
}
function opennowin(vurl) {
	var vhrf;
	if (! window.focus) return true;
	if (typeof(vurl) == 'string')
		vhrf=vurl;
	else
		vhrf=vurl.href;
	window.open(vhrf, "", "toolbar=no,location=no,directories=no,status=no,menubar=yes,scrollbars=yes,resizable=yes,width=600,height=420,left=50,top=50");
	return false;
}
function opennowinmx(vurl) {
	var vhrf;
	if (! window.focus) return true;
	if (typeof(vurl) == 'string')
		vhrf=vurl;
	else
		vhrf=vurl.href;
	window.open(vhrf, "", "toolbar=no,location=no,directories=no,status=no,menubar=yes,scrollbars=yes,resizable=yes,width=750,height=900,left=130,top=0");
	return false;
}
function opennowinks(vurl) {
	var vhrf;
	if (! window.focus) return true;
	if (typeof(vurl) == 'string')
		vhrf=vurl;
	else
		vhrf=vurl.href;
	window.open(vhrf, "", "toolbar=no,location=no,directories=no,status=no,menubar=yes,scrollbars=yes,resizable=yes,width=750,height=900,left=130,top=0");
	return false;
}
function opennowinzctzs(vurl) {
	var vhrf;
	if (! window.focus) return true;
	if (typeof(vurl) == 'string')
		vhrf=vurl;
	else
		vhrf=vurl.href;
	window.open(vhrf, "", "toolbar=no,location=no,directories=no,status=no,menubar=yes,scrollbars=yes,resizable=yes,width=800,height=650,left=150,top=0");
	return false;
}
function isLeapYear(year) 
{ 
if((year%4==0&&year%100!=0)||(year%400==0)) 
{ 
return true; 
} 
return false; 
} 
//计算两个时间段的差值

function marginDate(LStartDate,LEndDate)
{
var es = document.getElementById(LEndDate);
var ss = document.getElementById(LStartDate);

try
{
var ed= new Date(es.value.replace(/-/g,"\/"));
var sd= new Date(ss.value.replace(/-/g,"\/"));

var a   = ed.getTime()-sd.getTime();
return(a/(24*60*60*1000));
}
catch(e)
{alert(e.description);}
}
//判断时间是否正确

function isDate(checktext){
var datetime;
var year,month,day;
var gone,gtwo;
var s=(checktext.value).trim();
if( s !="" ){
datetime=s;
if(datetime.length==10){
 year=datetime.substring(0,4);
 if(isNaN(year)==true){
  alert("请输入日期格式不对，应该为YYYY-MM-DD！");
  checktext.focus();
  return false;
 }
 gone=datetime.substring(4,5);
 month=datetime.substring(5,7);
 if(isNaN(month)==true){
  alert("请输入日期格式不对，应该为YYYY-MM-DD！");
  checktext.focus();
  return false;
 }
 gtwo=datetime.substring(7,8);
 day=datetime.substring(8,10);
 if(isNaN(day)==true){
  alert("请输入日期格式不对，应该为YYYY-MM-DD！");
  checktext.focus();
  return false;
 }
 if((gone=="-")&&(gtwo=="-")){
  if(month<1||month>12) { 
  alert("月份必须在01和12之间!"); 
  checktext.focus();
  return false; 
  } 
  if(day<1||day>31){ 
  alert("日期必须在01和31之间!");
  checktext.focus(); 
  return false; 
  }else{
  if(month==2){ 
   if(isLeapYear(year)&&day>29){ 
    alert("二月份日期必须在01到29之间!"); 
    checktext.focus();
    return false; 
   }    
   if(!isLeapYear(year)&&day>28){ 
    alert("二月份日期必须在01到28之间!");
    checktext.focus(); 
    return false; 
   } 
  } 
  if((month==4||month==6||month==9||month==11)&&(day>30)){ 
   alert("在四，六，九，十一月份天数必须在01到30之间!");
   checktext.focus(); 
   return false; 
  } 
  }
 }else{
  alert("请输入日期格式不对，应该为YYYY-MM-DD！");
  checktext.focus();
  return false;
 }
}else{
 alert("请输入日期格式不对，应该为YYYY-MM-DD！");
 checktext.focus();
 return false;
}
}else{
return true;
}
return true;
}

//判断时间是否正确  不直接弹出对话框

function isDateNo(checktext){
var datetime;
var year,month,day;
var gone,gtwo;
var s=(checktext.value).trim();
if( s !="" ){
datetime=s;
if(datetime.length==10){
 year=datetime.substring(0,4);
 if(isNaN(year)==true){
  return false;
 }
 gone=datetime.substring(4,5);
 month=datetime.substring(5,7);
 if(isNaN(month)==true){
  return false;
 }
 gtwo=datetime.substring(7,8);
 day=datetime.substring(8,10);
 if(isNaN(day)==true){
  return false;
 }
 if((gone=="-")&&(gtwo=="-")){
  if(month<1||month>12) { 
  return false; 
  } 
  if(day<1||day>31){ 
  return false; 
  }else{
  if(month==2){ 
   if(isLeapYear(year)&&day>29){ 
    return false; 
   }    
   if(!isLeapYear(year)&&day>28){ 
    return false; 
   } 
  } 
  if((month==4||month==6||month==9||month==11)&&(day>30)){ 
   return false; 
  } 
  }
 }else{
  return false;
 }
}else{
 return false;
}
}else{
return true;
}
return true;
}
