//0. MagEnvironment.MagComputerInfoCtl   本地信息管理
//1. MagEnvironment.MagOperatorsCtl  本地操作人员管理
//2. MagEnvironment.MagFileCtl		 本地文件系统管理
//3. MagEnvironment.MagSecurityCtl	 本地安全操作管理
//4. MagEnvironment.MagOperatorCtl	 操作员值对象处理
var RMagOcxEnv = {
	MagOcxBase : ["MagComputerInfoCtl","MagOperatorsCtl","MagFileCtl","MagSecurityCtl","MagOperatorCtl"],
	CreateObject : function(name){
		try{return new ActiveXObject(name);}catch(e){return null;}
	},
	CreateEnvObj : function(idx){
		if(idx<0 || idx > this.MagOcxBase.length) return null;
		return this.CreateObject("MagEnvironment." + this.MagOcxBase[idx]);
	}
}

//以上是整理的控件操作
function CJSMagUpdate(updatepath,ap,user,closeme){
	this.path = updatepath;
	this.ap = ap;
	this.user = user;
	this.closeme = closeme;
	this.EnvFailure = false;
	this.oFileCtl = false;      //文件上传下载
	this.oSecurityCtl = false;  //安全验证
	this.MagOAClientCtl = false; //CS客户端 如消息 验证用户是否登陆
	this.MagOpAdmin = false; //用户登陆管理
	this.close = function(){
		if(!this.closeme){
			window.opener = null;
			window.close();
		}else{
			this.closeme();
		}
	}
	this.CheckLocalEnv = function(){//特定OCX是否存在检查本地升级环境是否可用，如不可用则关闭。
		if(!this.EnvFailure && this.oFileCtl.ErCode != undefined) return true;
		if(!this.DownInstallPkg("", -1 )){
			alert("\n提示:\n\n  1. 弹出窗口已被禁止，请允许弹出窗口。\n\n  2. 如不能自动安装插件，请下载安装。");
			return false;
		}else{
			this.close();
		}
		return false;
	}
	this.CheckModule = function(mod){ //0 未变更 1 更新成功 -1 更新失败 不用关闭
		//检查是否需要更新。
		if(!this.ap){ //后台调用器失败直接关闭。
			alert("Ajax无效!");
			this.close();
			return -1;
		}
		if(!this.user && mod != "000000"){
			alert("用户未登陆!");
			this.close();
			return -1;
		}
		var ChkVersion = new this.ap();
		ChkVersion.addParm(1 , mod);
		ChkVersion.invoke("PT_UPDATE.PW_PT_UPDATE_LIST", false);

		var iCnt = ChkVersion.getRowCount("P_RESULT");
		var path = "";
		if(iCnt>0)	path += ChkVersion.getString("PC_PATH");  //应用根目录以后增加路径到PATH中去。

	  //更新Base
		var baseFile = ["MagEnvironment.dll","MagEnvironment.dll"];
		if(!!this.oFileCtl.EnvNames){
			baseFile[1] = this.oFileCtl.EnvNames;
		}
		for(var i=1;i<=iCnt;i++){
			var modpath = path + ChkVersion.getString("P_RESULT", i, "C_CLIENTADDRESS") + "\\";
			var file = ChkVersion.getString("P_RESULT", i, "C_FILE");
			if("1" == ChkVersion.getString("P_RESULT", i, "C_SCFLAG")){
				if(this.oFileCtl.CheckFileSize(this.oFileCtl.WorkRoot+modpath+file) != -1) return this.InstallModule(mod);
				continue;
			}
			var md5 = ChkVersion.getString("P_RESULT", i, "C_JYM");
			var newfile = file;
			if(baseFile[0]==newfile) newfile = baseFile[1];
			var md5new = this.oSecurityCtl.MD5File(this.oFileCtl.WorkRoot + modpath + newfile);
			if(md5 != md5new){ //文件有变更
				var bFind = this.oFileCtl.CheckFileSize(this.oFileCtl.WorkRoot+modpath+file) != -1;
				if(!bFind && this.oFileCtl.ErCode == 32){ //32 正在被使用 2 不存在
					continue;
				}
				/*alert("Old: "+md5 +"\nNew: "
					+ this.oSecurityCtl.MD5File(this.oFileCtl.WorkRoot + modpath + file) 
					+ "\n 名称: " + (this.oFileCtl.WorkRoot + modpath + file));*/
				return this.InstallModule(mod);
			}
		}
		return 0;
	}

	this.DownInstallPkg = function(module,ercode){ //下载安装包程序并关闭自己
		//alert("错误代码:"+ercode);
		// 显示提示信息
		var sMsg = '欢迎使用成都市建设管理委员会综合应用办公系统!';
		sMsg += '||您的计算机是第一次使用本系统, 需要安装系统控件后才能使用!';
		sMsg += '||单击确定键将进入控件下载安装界面, 单击取消按键将关闭系统!';
		if (!showMessage(sMsg, '1')){
			return true;
		}

		var winH = 300,winW = 400;
		var feature = "titlebar=false,menubar=false,location=false,";
		feature+=",height="+ winH;
		feature+=",width="+ winW;
		feature+=",top="+ (screen.availHeight - winH)/2;
		feature+=",left="+ (screen.availWidth - winW)/2;
		if(null == window.open(this.path + "installCtl.html?mod="+module,"_blank",feature)) return false;
		return true;
	}



	this.InstallModule  = function(mod){ //安装指定模块
		var bRet = window.showModalDialog(this.path + "update.html",[mod,this.ap,this.user],"dialogHeight:300px;dialogWidth:400px");
		if(bRet == -1){
			this.close();
		}
		return bRet;
	}
	this.init = function(){
		try{
			this.oFileCtl = new ActiveXObject("MagEnvironment.MagFileCtl"); //File检查;
			this.oSecurityCtl = new ActiveXObject("MagEnvironment.MagSecurityCtl"); //安全检查
			this.MagOpAdmin = new ActiveXObject("MagEnvironment.MagOperatorsCtl"); //用户管理
		}catch(e){
			this.EnvFailure = true;
		}
		if(!this.oFileCtl || !this.oSecurityCtl || !this.MagOpAdmin) this.EnvFailure = true;
	}
	this.init();
}

function getUrlParas(vPara){	
	vPara = vPara.split("/");
	if(!vPara.length) return;
	vPara = vPara[vPara.length-1];
	vPara = vPara.split("?");
	if(vPara.length==1) return;
	vPara =vPara[1];
	vPara = vPara.split("&");
	var iLen = vPara.length;
	var paras = new Array();
	for(var i=0;i<iLen;i++){
		var tPara = vPara[i].split("=");
		paras[tPara[0]] = tPara[1];
	}
	return paras;
}
/**
 * 功能 : 页面控件状态处理
 * restoreFrom(obj),disForm(obj),enEle(obj,flag);
**/
//恢复原状态
function restoreFrom(obj){
	var els = obj.getElementsByTagName("INPUT");
	for(var i=0;i<els.length;i++){
		enEle(els[i],!els[i]._dis);
	}
	els = obj.getElementsByTagName("TEXTAREA");
	for(var i=0;i<els.length;i++){
		enEle(els[i],!els[i]._dis);
	}
	els = obj.getElementsByTagName("SELECT");
	for(var i=0;i<els.length;i++){
		els[i].disabled=els[i]._dis;
	}
}
//保存原状态并禁止
function disForm(obj){
	var els = obj.getElementsByTagName("INPUT");
	for(var i=0;i<els.length;i++){
		els[i]._dis = els[i].disabled;
		enEle(els[i],false,true);
	}
	els = obj.getElementsByTagName("TEXTAREA");
	for(var i=0;i<els.length;i++){
		els[i]._dis = els[i].disabled;
		enEle(els[i],false);
	}
	els = obj.getElementsByTagName("SELECT");
	for(var i=0;i<els.length;i++){
		els[i]._dis = els[i].disabled;
		els[i].disabled=true;
	}
}
//允许禁止控件
function enEle(obj,flag,isForm){
	var tmpClsName="";
	if(obj.tagName=="INPUT"){
		switch(obj.type){
			case "text":
			case "password":
				if(!flag) tmpClsName = "EditBox_Dis";
				else tmpClsName = "EditBox";
				break;
			case "radio":
			case "checkbox":
				return true;
			case "reset":
			case "submit":
			case "file":
			case "image":
			case "button":
				if(!isForm||obj.nodis==undefined){
					if(!flag) tmpClsName = "Button_Dis";
					else tmpClsName = "Button";	
          obj.disabled = ! flag;
					break;
				}else{
					return true;
				}
		}
	}else if(obj.tagName=="TEXTAREA"){
		if(!flag) tmpClsName = "EditBox_Dis";
		else tmpClsName = "EditBox";
	}else{
		return true;
	}
	obj.readOnly = ! flag;	
	obj.className = tmpClsName;	
}
/**
 * 功能:当前焦点区域处理
 * 使当前输入控件成为焦点其边框色为粉红色(Select被景色为蓝色)
 * onActivate="actEle(event.srcElement)
**/
var _lastCur=false;
function actEle(obj){
	if(_lastCur){
		setEleCur(_lastCur,false);
		_lastCur = false;
	}
	setEleCur(obj,true);
}
//设置对象为当前焦点
function setEleCur(obj,flag){
	var tmpClsName="current";
	_lastCur=obj;
	if(obj.tagName=="INPUT"){
		if(!flag){
			switch(obj.type){
				case "text":
				case "password":
					tmpClsName = "EditBox";
					break;
				case "radio":
				case "checkbox":
					tmpClsName = "";
					break;
				case "reset":
				case "submit":
				case "file":
				case "image":
				case "button":
					tmpClsName = "Button";
					break;
			}
		}
	}else if(obj.tagName=="TEXTAREA"){
		if(!flag) tmpClsName = "";
	}else if(obj.tagName=="A"){
		if(!flag) tmpClsName = "";
	}else{
		_lastCur = false;
		return true;
	}
	obj.className = tmpClsName;
}
/**
 * 功能:类型转换
 *
*/
function TimeStamp2D(Stamp){
	if(Stamp=="") return Stamp;
	var tmpDate = new Date(parseFloat(Stamp));
	return tmpDate.getYear()+"-"+(tmpDate.getMonth()+1)+"-"+tmpDate.getDate();
}
function TimeStamp2DT(Stamp){
	if(Stamp=="") return Stamp;
	var tmpDate = new Date(parseFloat(Stamp));
	return tmpDate.getYear()+"-"+(tmpDate.getMonth()+1)+"-"+tmpDate.getDate() + 
			" " + tmpDate.getHours() + ":" + tmpDate.getMinutes() + ":" + tmpDate.getSeconds() +"." + tmpDate.getMilliseconds();
}
function DStr2Value(vDStr){
	if(vDStr == "" ) return "";	
	var vd="";
	var id=0;
	if(vDStr=="") return 0;
	if(vDStr.length<12){
		d = vDStr.match(/^(\w{4})(-|\/)(\w{1,2})\2(\w{1,2})$/);
		try{
			var tt=Date.parse(d[3]+"-"+d[4]+"-"+d[1]);
			return tt;
		}catch(e){
			alert(vDStr);
			return 0;
		}
	}else{
		return DTStr2Value(vDStr);
	}
}
function DTStr2Value(vDStr){
	if(vDStr == "" ) return "";
	if(vDStr.length>16){
		var d = vDStr.match(/^(\w{4})(-|\/)(\w{1,2})\2(\w{1,2}) (\w{1,2}):(\w{1,2}):(\w{1,2}).(\w{1,3})$/);
		if(!d){
			alert("时间格式应为 ：'yyyy-mm-dd hh:mi:ss.x'");
			return 0;
		}
		return Date.parse(d[3]+"-"+d[4]+"-"+d[1] + " " + d[5] + ":" + d[6] + ":" + d[7]);
	}else{
		vDStr = vDStr.substring(0,16);
		var d = vDStr.match(/^(\w{4})(-|\/)(\w{1,2})\2(\w{1,2}) (\w{1,2}):(\w{1,2})$/);
		if(!d){
			alert("时间格式应为 ：'yyyy-mm-dd hh:mi'");
			return 0;
		}
		return Date.parse(d[3]+"-"+d[4]+"-"+d[1] + " " + d[5] + ":" + d[6]);
	}
}
function decodeList(oList,value){
	oList.value=value;
	if(oList.selectedIndex!=-1){
		return oList.options[oList.selectedIndex].text;
	}else{
		return "";
	}
}
function decodeListV(oList,value){
	for(var i = 0;i<oList.length;i++){
		if(oList.options[i].text == value) {
			return oList.options[i].value;
		}
	}
	return "";
}
function oSelToSel(osSel,opSel){
    var nLen = osSel.length;
	opSel.length=nLen;
	if(nLen==0) return true;
    for(var i=0;i<nLen;i++){
	    opSel.options[i].value = osSel.options[i].value;
		opSel.options[i].text  = osSel.options[i].text;
	}
	return true;
}
function Lst2LstByI(SrcLst,DstLst,idx){
    if(idx<0) return ;
    DstLst.options[DstLst.length++].value=SrcLst.options[idx].value;
    DstLst.options[DstLst.length-1].text=SrcLst.options[idx].text;
    SrcLst.remove(idx);
}
function str2TdSel(idtd,idSel,SelPara,ops){
	var strSel="&nbsp;<SELECT id='" + idSel +"' name='" + idSel+"' " + SelPara +" >"+ops+"</SELECT>";
	strSel=strSel.replace(/&gt;/gi,">");
	strSel=strSel.replace(/&lt;/gi,"<");
	idtd.innerHTML = strSel;
}
function oScpToSel(oScp,cpValue,cpText,opSel){
    var nLen = oScp.getRowCount();
	opSel.length=nLen;
	if(nLen==0) return true;
    for(var i=0;i<nLen;){
	    opSel.options[i].value=(cpValue==-1?i+1:oScp.getResultValue(i+1 , cpValue));
		opSel.options[i].text= oScp.getResultValue(++i , cpText);
	}
	return true;
}
function SelInsItem(obj,value,text){
	var oOption = document.createElement("OPTION");
	obj.options.insertBefore(oOption,obj.options[0]);
	oOption.innerText = text;
	oOption.value = value;
	obj.selectedIndex = 0;
}
/**
 * 功能：保存前验证输入
**/
//是否组组织机构号
function isUnitId(obj,eMsg,isNull,obj2){
	strZZDM = obj.value;
	if(obj2!=undefined) strZZDM +=	obj2.value;
	if(isNull&&!strZZDM) return true;
	if(9==strZZDM.length){
		var checkbit = new Array('3', '7', '9', '10', '5', '8', '4', '2');
		var icheckbit;
		var tempnum = 0;
		var i = 0;
		for(i = 0; i < 8 ; i++){
			var bitNum = strZZDM.substr(i, 1).charCodeAt(0) - 48;
			if(bitNum>9) bitNum -=7;
			tempnum += checkbit[i] * bitNum;
		}
		tempnum = 11 - tempnum % 11;
		switch(tempnum){
			case 10:
				tempnum = 'X';
				break;
			case 11:
				tempnum = '0';			
				break;
			default:
		}
		if(tempnum == strZZDM.substr(8, 1).toUpperCase()) return true;
	}
	alert(eMsg+"输入不正确!");
	if(obj2!=undefined) obj2.value="";
	obj.select();
	obj.focus();
	return false;
}
function isEmailAddr(obj,eMsg,isNull){
	if(isNull&&!obj.value) return true;
	if(!(/^([\.a-zA-Z0-9_-]){3,}@([a-zA-Z0-9_-]){3,}(\.([a-zA-Z0-9]){2,10}){1,}$/.test(obj.value))){
		alert(eMsg+"输入不正确!");
		obj.select();
		obj.focus();
		return false;
	}
	return true;
}
function isUrlAddr(obj,eMsg,isNull){
	if(isNull&&!obj.value) return true;
	/*if(!(/^http:\/\/([\w-]+\.)+[\w-]+(\/[\w- ./?%&=]*)?$/.test(obj.value))){
		alert(eMsg+"输入不正确!");
		obj.select();
		obj.focus();
		return false;
	}*/
	return true;
}
function isStrLength(obj,eMsg,isNull,len){
	if(isNull&&!obj.value) return true;
	if(obj.value.length!=len){
		alert(eMsg+"输入不正确!");
		obj.select();
		obj.focus();
		obj.OuterHTML;
		return false;
	}
	return true;
}
function isOLen(len){
	var obj = event.srcElement;
	if(obj.value.length == len ) return true;
	return false;
}
//值1小于等于值2
function IsLess(obj,d1,d2,eMsg,isNull){
	if(isNull&&!obj.value) return true;
	if(d1-d2>0){
		alert(eMsg);
		obj.select();
		obj.focus();
		return false;	
	}
	return true;
}
//判定值是否在两值之间
function IsBetween(obj,minV,maxV,eMsg,isNull){
	if(isNull&&!obj.value) return true;
	var tVal=obj.value-0;
	if(typeof(minV)=="boolean"){
		if(typeof(maxV)=="boolean") return true;
		eMsg += "应该不大于"+maxV+"!!";
		return IsLess(obj,tVal,maxV,eMsg);
	}else if(typeof(maxV)=="boolean"){
		eMsg += "应该不小于"+minV+"!!";	
		return IsLess(obj,minV,tVal,eMsg);
	}
	eMsg += "应该在"+minV+"与"+maxV+"之间!!";
	return IsLess(obj,minV,tVal,eMsg)&&IsLess(obj,tVal,maxV,eMsg);
}
//是否空
function IsNotNul(obj,eMsg){
	if(obj.value==""){
		alert(eMsg+"不能为空");
		try{
			obj.focus();
		}catch(e){
		}
		return false;
	}
	return true;
}
//是否数字
function isNum(obj,eMsg,isNull){
	if(!isNull&&!IsNotNul(obj,eMsg)) return false;
	if(isNaN(parseFloat(obj.value))){
		alert(eMsg+"必须输入数字");
		try{
			obj.focus();
		}catch(e){
		}
		return false;
	}
	return true;
}
//是否某区间的整型
function isInt(obj,eMsg,isNull,minV,maxV,isNull){
	if(!isNull&&!IsNotNul(obj,eMsg)) return false;
	if(minV==undefined) minV=false;
	if(maxV==undefined) maxV=false;	
	return IsBetween(obj,minV,maxV,eMsg);
}
//是否某区间的浮点型
function isFloat(obj,eMsg,isNull,minV,maxV){
	if(!isNull&&!IsNotNul(obj,eMsg)) return false;
	if(minV==undefined) minV=false;
	if(maxV==undefined) maxV=false;
	return IsBetween(obj,minV,maxV,eMsg);
}
/**
 * 功能：输入框光标及选择区处理 ?
 *
**/
//移动光标到指定位置
function mvCurTo(obj,pn){
	pn = parseInt(pn);
	if(isNaN(pn)) return;
	var rng = obj.createTextRange();
	rng.moveStart("character",pn);
	rng.collapse(true);
	rng.select();
	return rng;
}
//选择指定位置的文本
function selText(obj,sp,ep){     
	sp = parseInt(sp)     
	ep = parseInt(ep)     
	if(isNaN(sp)||isNaN(ep))  return;     
	var rng = obj.createTextRange();     
	rng.moveEnd("character",-obj.value.length)     
	rng.moveStart("character",-obj.value.length)     
	rng.collapse(true);     
	rng.moveEnd("character",ep)     
	rng.moveStart("character",sp)     
	rng.select();
	return rng;
}
//取光标位置
function getCurPos(obj){
	var orig = obj.value; //保留原值
	var rng = obj.document.selection.createRange();//查找位置
	var bookmark = "~";
	rng.text = bookmark;
	var i = obj.value.search(bookmark);
	obj.value=orig;//恢复原值
	return i;
}
//查找位置并选择文本;
function findText(obj,tw,flag){
	if(flag) obj._rg = obj.createTextRange();
	var rg=obj._rg;
	if(tw=="") return;        
	var sw = 0;     
	if(obj._rg.document.selection){
		sw = obj._rg.document.selection.createRange().text.length;     
	}
	rg.moveEnd("character",obj.value.length);
	rg.moveStart("character",sw);
	if(rg.findText(tw)){
		rg.select();
	}
	if(rg.text!=tw){
		alert("已经搜索完了")
		rg = box.createTextRange();
	}
}
/**
 * 功能区: 键盘输入分域输入区 (Tab下一域,左右键 位置在那时至上或下域,) ??
**/
//初始化域输入控件 包括设置各事件句柄 ?
function mvFld(obj,offld){
	obj._fldN+=offld;
	if(obj._fldN<obj._fld.length){
		if(obj._fldN<1)  selText(obj,0,obj._fld[0]);
		else selText(obj,obj._fld[obj._fldN-1]+1,obj._fld[obj._fldN]);
	}else{
		 return true;
	}
	event.returnValue=false;
}
//处理按下 ?
function dumpKFld(){
	var obj = event.srcElement;
/*	var tt=String.fromCharCode(event.keyCode);
	alert(tt+":"+obj._fldC);
	return;
	if(event.keyCode==obj._fldC){
		mvFld(obj,1);
		event.returnValue=false;
		return false;
	}*/
	switch(event.keyCode){
		case 8://退格
			var i=getCurPos(event.srcElement)-1;
			if(obj.value.charAt(i)==obj._fldC){
				mvFld(obj,-1);
			}
			break;
		case 13://回车
		case 9://Tab
			if(event.shiftKey) mvFld(obj,-1);
			else mvFld(obj,1);
			break;
		case 37://左
		case 39://右
			//mvCurTo(event.srcElement,i);
			break;
		case 46://删除当前位置值
			//mvCurTo(event.srcElement,getCurPos(event.srcElement)+1);
			//event.returnValue=false;
			break;
	}
	return true;
}
function dumpPFld(obj,fld,fldCon,isNew){
	obj._fldN = 0;
	if(obj._fld&&!isNew){
		selText(obj,0,obj._fld[0]);
		return ;
	}
	var len=0;
	var tVal="";
	obj._fld = fld;
	obj._fldC = fldCon;
	for(var i=0;i<fld.length;i++){
		if(i==0) tVal="   ";
		else{
			tVal+=fldCon + "   ";
			obj._fld[i] += (1+obj._fld[i-1]);
		}
		len += (fld[i]-0);
	}
	len += (fld.length-1);
	if(obj.value.length!=len){
		obj.value=tVal;
		selText(obj,0,obj._fld[0]);
	}
}
/**
 * 功能区: 键盘输入特殊键处理区
 * onkeydown="dumpkey()":处理回车键及ESC键，当_def,_esc有click方法则在发生时调用
 * onkeydown="dumpYear()" :处理只能输入年度
**/
//处理onKeyDown事件
function dumpkey(_def,_esc){
	if(event.keyCode==13){
		if(!_def){
			if(event.srcElement.type!="button"&&event.srcElement.tagName!="A"&&event.srcElement.type!="textarea"){
				event.keyCode = 9;
			}
		}else if(_def.click){
			_def.click();
			event.returnValue=false;
		}
	}else if(event.keyCode==27){
		if(_esc&&_esc.click){
			_esc.click();
			event.returnValue=false;
		}
	}
	return event.returnValue;
}
//处理编辑时的几个键 ?
function dumpEKey(){
	switch(event.keyCode){
		case 8://退格
			mvCurTo(event.srcElement,getCurPos(event.srcElement)-1);
			event.returnValue=false;
			break;
		case 13://回车
		case 9://Tab
			//mvCurTo(event.srcElement,2,4);
			//event.returnValue=false;
			break;
		case 37://左
		case 39://右
			//mvCurTo(event.srcElement,i);
			break;
		case 46://删除当前位置值
			mvCurTo(event.srcElement,getCurPos(event.srcElement)+1);
			event.returnValue=false;
			break;
	}
	return true;
}
/**
 * 功能 : 处理键盘输入一般处理区
 * 同时处理onKeyUp及onpaste onKeyUp="dumpdYear()" onpaste="dumpdYear()"
**/
//BASE 对输入框以正则表达式规范其值
function dumpRegExp(tRe){
	var tVal=event.srcElement.value;	
	tRe = new RegExp(tRe,"ig");
	if(event.type=="paste") tVal = clipboardData.getData("Text");
	var tRet = tVal.match(tRe);
	event.srcElement.value = (tRet==null?"":tRet[0]);
	event.returnValue=false;
}
//只能输入年度1990-2009
function dumpYear(){
	var tRe="1(99[0-9]|9{0,2})?|2(00[0-9]|0{0,2})?";
	return dumpRegExp(tRe);
}
//功能:只能输入长度不大于len的数字
function dumpNum(len){
	len=!len?"":len;
	var tRe="([0-9]{0,"+len+"})";	
	return dumpRegExp(tRe);
}
//功能:只能输入0|大于0但长度不大于len有数字值
function dumpInt(len){
	len=!len?"":(len-=1);
	var tRe="([1-9][0-9]{0,"+len+"})|0";
	return dumpRegExp(tRe);
}
//功能:只能输入[m|0].n浮点型数据
function dumpfloat(m,n,fs){
	m=!m?"":(m-=1);
	n=!n?"":n;
	var tRe=(!fs?"":"(-)?");
	tRe+="(0|[1-9][0-9]{0,"+m+"})?([\.][0-9]{0,"+n+"})?";
	return dumpRegExp(tRe);
}
//功能:只能输入13*/159手机
function dumpMobile(){
	var tRe="(0?(13[0-9]{0,9}|15(9[0-9]{0,8})?))|(01|0|1)";
	return dumpRegExp(tRe);
}
//功能:只能输入电话号码 86183
function dumpTel(){
	var tRe="(0{0,2}([1-9][0-9]{0,10})?)|([1-9][0-9]{0,7})(-([1-9][0-9]{0,3})?)?";
	return dumpRegExp(tRe);
}
function dumpMobTel(){
	var tRe="0{0,2}(([2-9][0-9]{0,10})(-([1-9][0-9]{0,3})?)?|(13[0-9]{0,9})|(15(9[0-9]{0,8})?)|(10([1-9][0-9]{0,8})?)|(1[035]{0,1}))?";
	return dumpRegExp(tRe);
}
function dumpSFZ(){
	var tRe="[1-9][0-9]{0,17}[xX]{0,1}";
	return dumpRegExp(tRe);
}
function dumpEmail(){
	var tRe="[A-Za-z0-9_]+(@([A-Za-z0-9_]+\.?)*)?";
	return dumpRegExp(tRe);
}

