﻿//判断输入的字符是否为整数    
function IsInteger(str)     
{       
        var str = document.getElementById(str).value.trim();    
        if(str.length!=0){    
        reg=/^[-+]?\d*$/;     
        if(!reg.test(str)){    
            alert("对不起，您输入的整数类型格式不正确!");    
        }    
        }    
}     

function m$(id)
{
	return document.getElementById(id);
}


var elementNullStr='指定的元素不存在';
String.prototype.trim=function()
{
	return this.replace(/^\s+|\s+$/g,"");
}

//检测某控件的值是否为空
//if(!checkEmpty(form.Number,'货号不能为空'))return false;

function CheckEmpty(elem,msg)
{
	if(elem==null)
	{
		alert(elementNullStr);
		return false;
	}
	elem.value=elem.value.trim();
	if(elem.value.length==0)
	{
		if(msg.length!=0)
			alert(msg);
		elem.focus();
		return false;
	}
	return true;
}

function CheckEmptyOnHidden(elem,msg)
{
	if(elem==null)
	{
		alert(elementNullStr);
		return false;
	}
	elem.value=elem.value.trim();
	if(elem.value.length==0)
	{
		if(msg.length!=0)
			alert(msg);
		//elem.focus();
		return false;
	}
	return true;
}

//检测字符串是否不足长度

function CheckLengthIsEnough(elem,msg,length)
{
	if(elem==null)
	{
		alert(elementNullStr);
		return false;
	}
	if(elem.value.length<length)
	{
		alert(msg);
		elem.focus();
		return false;
	}
	return true;
}

//检测字符串是否超出长度

function CheckLengthIsOverrun(elem,msg,length)
{
	if(elem==null)
	{
		alert(elementNullStr);
		return false;
	}
	if(elem.value.length>length)
	{
		alert(msg);
		elem.focus();
		return false;
	}
	return true;
}

//检测是否为整数

function CheckInt(elem,msg)
{
	if(elem==null)
	{
		alert(elementNullStr);
		return false;
	}
	if(elem.length==0)return true;
	var reg=/^[0-9]{0,}$/;
	if(!reg.test(elem.value))
	{
		alert(msg);
		elem.focus();
		return false;
	}
	return true;
}

//检测数值范围


function CheckNumberArea(elem,msg,minValue,maxValue)
{
	if(elem==null)
	{
		alert(elementNullStr);
		return false;
	}
	if(elem.length==0)return true;
	if(elem.value<minValue && elem.value>maxValue)
	{
		alert(msg.replace('#1',minValue).replace('#2',maxValue));
		elem.focus();
		return false;
	}
	return true;
}
//检测是否为数字

function IsNumber(elem,msg)
{
	if(elem==null)
	{
		alert(elementNullStr);
		return false;
	}
	if(elem.length==0)return true;
	var reg=/^[-,+]{0,1}[0-9]{0,}[.]{0,1}[0-9]{0,}$/;
	if(!reg.test(elem.value))
	{
		alert(msg);
		elem.focus();
		return false;
	}
	return true;
}
//是否为日期

function IsDate(elem,msg)
{
	if(elem==null)
	{
		alert(elementNullStr);
		return false;
	}
	var reg=/^[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}$/;
	if(!reg.test(elem.value) || elem.length==0)
	{
		alert(msg);
		elem.focus();
		return false;
	}
	return true;
}

//检测帐号密码


function CheckAccount(elem,msg)
{
	if(elem==null)
	{
		alert(elementNullStr);
		return false;
	}
	
	var reg=/^[a-zA-Z0-9_]+$/;
	if(!reg.test(elem.value))
	{
		alert(msg);
		elem.focus();
		return false;
	}
	return true;
}

//检测E-mail地址

function CheckEmail(elem,msg)
{
	if(elem==null)
	{
		alert(elementNullStr);
		return false;
	}
	var reg=/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
	if(!reg.test(elem.value))
	{
		alert(msg);
		elem.focus();
		return false;
	}
	return true;
}

//检测两个元素值是否相等

function Equal(elem1,elem2,msg)
{
	if(elem1==null || elem2==null)
	{
		alert(elementNullStr);
		return false;
	}
	if(elem1.value!=elem2.value)
	{
		alert(msg);
		elem2.focus();
		return  false;
	}
	return true;
}

//检测是否为url地址

function CheckUrl(elem,msg)
{
	if(elem==null)
	{
		alert(elementNullStr);
		return false;
	}
	var reg=/^https{0,1}:\/\/(\w|-)+\.((\w|-)+\.)+\w.+$/i;
	if(!reg.test(elem.value))
	{
		alert(msg);
		elem.focus();
		return false;
	}
	return true;
}

function CheckDate(elem,msg)
{
	if(elem==null)
	{
		alert(elementNullStr);
		return false;
	}
	if(elem.value=='')
		return true;
//	var reg=/^https{0,1}:\/\/(\w|-)+\.((\w|-)+\.)+\w.+$/i;
	var reg=/^[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}$/i;
	if(!reg.test(elem.value))
	{
		alert(msg);
		elem.focus();
		return false;
	}
	return true;
}

//图片加载后缩小 <img onload="ImageResize(this,100,80)"/>
function ImageResize(img,width,height)
{
	//alert('in');
	var oW,oH;
	oW=img.width;
	oH=img.height;
	if(img.width>width)
	{
		img.width=width;
		//alert('img.width='+img.width+'\nimg.height='+img.height);
		img.height=oH*width/oW;
		//alert('height='+img.height);
		oW=img.width;
		oH=img.height;
	}
	if(img.height>height)
	{
		img.height=height;
		img.width=oW*height/oH;
	}
//	img.width=destW;
//	img.height=destH;
}
//全选
function SelectAll(obj,name)
{
	var checked=obj?obj.checked:true;
	var arrCtl=document.getElementsByName(name);
	for(var i=0;i<arrCtl.length;i++)
		arrCtl[i].checked=checked;
}
//选择options中的某一项
function SelectOption(objId,value)
{
	var obj=document.getElementById(objId);
	if(!obj)
		{alert('SelectOption:'+objId+'不是有效的控件ID');return;}
	if(!value) return;
	for(var i=0;i<obj.options.length;i++)
	{
		if(obj.options[i].value==value || obj.options[i].text==value)
		{
			obj.selectedIndex=i;
			return;
		}
	}
}
// 删除确认
function DeleteConfirm(msg)
{
	if(!msg)
		msg='是否确认删除?';
	if(window.confirm(msg))
		return true;
	else 
		return false;
}
// Radio选择
function RadioSwitchDo(elem,display,container)
{
	var ctn=document.getElementById(container);
	if(!ctn)
	{
		alert('元素'+container+'不存在');
		return;
	}
	//alert(ctn.style.display);
	if(elem.checked)
		ctn.style.display=display?"":"none";
}
// CheckBox选择
function CheckBoxSwitchDo(elem,container)
{
	var ctn=document.getElementById(container);
	if(!ctn)
	{
		alert('元素'+container+'不存在');
		return;
	}
	//alert(ctn.style.display);
	ctn.style.display=elem.checked?"":"none";
}

//检查radio,checkbox是否有选择项
function CheckOptionChecked(name,msg)
{
	var ctl=document.getElementsByName(name);
	for(var i=0;i<ctl.length;i++)
	{
		if(ctl[i].checked)
			return true;
	}
	alert(msg);
	ctl[0].focus();
	return false;
}
function getSelectedVal(sel)
{
	if(sel.selectedIndex==-1) return null;
	return sel.options[sel.selectedIndex].value;
}
function getSelectedName(sel)
{
	if(sel.selectedIndex==-1) return null;
	return sel.options[sel.selectedIndex].text;
}

Date.prototype.Format=function (format)
{
	if (format == null)
		format = "yyyy/MM/dd HH:mm:ss.SSS";
	var year = this.getFullYear();
	var month = this.getMonth();
	var sMonth = ["January","February","March","April","May","June","July","August","September","October","November","December"][month];
	var date = this.getDate();
	var day = this.getDay();
	var hr = this.getHours();
	var min = this.getMinutes();
	var sec = this.getSeconds();
	var daysInYear = Math.ceil((this-new Date(year,0,0))/86400000);
	var weekInYear = Math.ceil((daysInYear+new Date(year,0,1).getDay())/7);
	var weekInMonth = Math.ceil((date+new Date(year,month,1).getDay())/7);
	return format.replace("yyyy",year).replace("yy",year.toString().substr(2)).replace("dd",(date<10?"0":"")+date).replace("HH",(hr<10?"0":"")+hr).replace("KK",(hr%12<10?"0":"")+hr%12).replace("kk",(hr>0&&hr<10?"0":"")+(((hr+23)%24)+1)).replace("hh",(hr>0&&hr<10||hr>12&&hr<22?"0":"")+(((hr+11)%12)+1)).replace("mm",(min<10?"0":"")+min).replace("ss",(sec<10?"0":"")+sec).replace("SSS",this%1000).replace("a",(hr<12?"AM":"PM")).replace("w",weekInYear).replace("W",weekInMonth).replace("E",["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"][day]).replace("D",daysInYear).replace(/MMMM+/,sMonth).replace("MMM",sMonth.substring(0,3)).replace("MM",(month<9?"0":"")+(month+1)).replace("F",Math.ceil(date/7));
};


//取元素相对于body的坐标
function ZB() {
    this.left = 0,
 this.top = 0,
 this.width = 0,
 this.height = 0
};
function GetZB(obj) {
    var o = obj;
    var oLTWH = new ZB();
    oLTWH.width = o.offsetWidth;
    oLTWH.height = o.offsetHeight;
    oLTWH.left = o.offsetLeft;
    oLTWH.top = o.offsetTop;
    while (true) {
        o = o.offsetParent;
        if (o == (document.body && null)) break;
        oLTWH.left += o.offsetLeft;
        oLTWH.top += o.offsetTop;
    }
    return oLTWH;
}
