﻿	// 左右去除空格函数
	String.prototype.trim = function(){
		return this.replace( /(^\s*)|(\s*$)/g, "" );
	}
	
	// 判断输入是否是有效的短日期格式 - "YYYY-MM-DD"
	String.prototype.isValidDate = function(){
		var result = this.match( /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/ );
		if( result == null ) return false;
		var d = new Date( result[1], result[3]-1, result[4] );
		return ( d.getFullYear() == result[1] && d.getMonth()+1 == result[3] && d.getDate() == result[4] );
	}
	
	// 判断输入是否是有效的短日期格式 - "YYYY-MM-DD"(日和月必须为2位数)
	String.prototype.isValidDateEx = function(){
		var result = this.match( /^(\d{1,4})(-|\/)(\d{2,2})\2(\d{2,2})$/ );
		if( result == null ) return false;
		var d = new Date( result[1], result[3]-1, result[4] );
		return ( d.getFullYear() == result[1] && d.getMonth()+1 == result[3] && d.getDate() == result[4] );
	}
	
	// 判断输入是否是有效的时间格式 - "HH:MM:SS"
	String.prototype.isValidTime= function(){
		var resule = this.match( /^(\d{1,2})(:)?(\d{1,2})\2(\d{1,2})$/ );
		if ( result == null ) return false;
		if ( result[1] > 24 || result[3] > 60 || result[4] > 60 ) return false;
		return true;
	}
	
	// 判断是否有效的长日期格式 - "YYYY-MM-DD HH:MM:SS"
	String.prototype.isValidDatetime = function(){
		var result = this.match( /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/ );
		if( result == null ) return false;
		var d= new Date( result[1], result[3]-1, result[4], result[5], result[6], result[7] );
		return ( d.getFullYear() == result[1] && ( d.getMonth()+1 ) == result[3] && d.getDate() == result[4] && d.getHours() == result[5] && d.getMinutes() == result[6] && d.getSeconds() == result[7] );
	}
	
	// 判断是否有效的整数


	String.prototype.isValidIntNumber = function(){
		if ( isNaN( parseInt( this ) ) || parseInt( this ).toString() != this ) return false;
		else return true;
	}
	
	// 判断是否有效的浮点数
	String.prototype.isValidFloatNumber = function(){
		if ( isNaN( parseFloat( this ) ) || parseFloat( this ).toString() != this ) return false;
		else return true;
	}

	// 判断是否有效的 EMAIL 格式 - a@b.com
	String.prototype.isEmail = function() {
		var reg = /^\w+((-\w+)|(\.\w+)|(\+\w+)|(\.\+\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/;
		return reg.test( this );
	}
	
	// 判断是否合法的HTTP地址 - Http://www.msbnet.net
	String.prototype.isHttp = function() {
		if ( ( this.substring(0,7).toUpperCase() != "HTTP://" ) || ( this.length < 10 ) ) return false;
		else return true;
	}
	
	// 格式化中文的目录名，使用 IE 和 FF 均可以显示


	String.prototype.toChinesePath = function(){
		return encodeChinesePath( this );
	}
	
	// 替换换行符为 HTML 的换行标签


	String.prototype.encodeHtmlEnter = function(){
		return this.replace( /\n/g, "<br>" );
	}
	
	// 返回一个指定名称的对象
	function $Obj( s ){
		return document.getElementById( s );
	}
	
	// 格式化中文的目录名，使用 IE 和 FF 均可以显示


	function encodeChinesePath( v ){
		return escape( v ).replace( /%5C/g, "/" );
	}
	
	// 判断输入的键值是否数字键
	function isNumber(){
		keyCode = SearchEvent().keyCode;
		if ( keyCode < 48 || keyCode > 57 ) return false;
		else return true;
	}
	
	// 设置图片大小到指定高宽


	function setSize( obj, maxW, maxH ){
		var scale = Math.min( maxW/obj.width, maxH/obj.height );
		obj.width *= scale;
	}
	
	// 截取指定长度的字符串
	function cutString( str, len ){
		if ( str.length > len ) return str.substring( 0, len ) + "…";
		else					 return str;
	}
	
	// 设置一个 Element 的值


	function setElementValue( objName, val ){
		$obj( objName ).value = val;
	}
	
	// 转换布尔值为数字
	function TransBoolTxtToInt( BoolTxt ){
		if ( BoolTxt.toLowerCase() == "true" )	return 1;
		else									return 0;
	}
	
	// 获取一个图片的 Html 代码
	function getImgHTML( name, src, maxW, maxH ){
		return "<img id=\""+ name +"\" src=\""+ src +"\" width=\""+ maxW +"\" border=\"0\" onload=\"setSize( this, "+ maxW +", "+ maxH +" )\" onclick=\"window.open( this.src )\" />";
	}
