//Get XmlDocument
function getXmlDocument(){
	var doc = null;
	if(document.implementation && document.implementation.createDocument){
	    doc = document.implementation.createDocument("","",null);
	}
	else if(typeof ActiveXObject != "undefined"){
	    try{
	    doc = new ActiveXObject("Msxml2.DOMDocument");
	    }catch(e){
	      doc = new ActiveXObject("Msxml.DOMDocument");
	    }
	}
	return doc;
}
function sendAjaxRequest(method,obj,url,callBack){
	if(window.XMLHttpRequest) { //Mozilla ??????
		request = new XMLHttpRequest();
		if (request.overrideMimeType) {//????MiME????
			request.overrideMimeType("text/xml");
		}
	}
	else if (window.ActiveXObject) { // IE??????
		try {
			request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				request = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {}
		}
	}
	if(method == "" || method ==null){
	    method == "GET"
	}
		if(request){
			request.open(method,url, true);
			request.onreadystatechange = callBack;
			request.send(obj);		
		} 	
}
function strLen(content){
	var len = 0;
	var i;
	for(i=0; i<content.length; i++)
	{
		if(content.charCodeAt(i)>255) len += 2; else len++;
	}
	return len;
}
String.prototype.strLen = function(){
	var len = 0;
	var i;
	for(i=0; i<this.length; i++)
	{
		if(this.charCodeAt(i)>255) len += 2; else len++;
	}
	return len;
}
Array.prototype.indexOf=function(obj){
   var result=-1;
   for(var i=0;i<this.length;i++){
      if(this[i]==obj){
          result=i;
          break;
      }
   }
   return result;
}
Array.prototype.contains=function(obj){
    return (this.indexOf(obj)>=0)
}
Array.prototype.append=function(obj){
    if(!this.contains(obj)){
        this[this.length]=obj;
    }
}
Array.prototype.remove=function(obj){
    if(!this.contains(obj)){
        return this;
    }else{
        var temp = new Array();
        var index=this.indexOf(obj);
        for(var i=0;i<this.length-1;i++){
           if(i>=index){
               temp[i]=this[i+1];
           }else{
               temp[i]=this[i];
           }
        }

        return temp;
    }
    return this;
}
//????;
//?????; 
function trim(s){
 	return rtrim(ltrim(newtrim(s))); 
}
//????; 
function ltrim(s){
 	return s.replace( /^\s*/, ""); 
} 
//????; 
function rtrim(s){ 
 	return s.replace( /\s*$/, ""); 
}
//????; 
function newtrim(s){
	return s.replace(/　/g,' ');
}

//????;
//????; 
function isEmpty(s){
	s = trim(s); 
	return s.length == 0; 
}
//Email;
function isEmail(s){
	s = trim(s); 
 	var p = /^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.){1,4}[a-z]{2,3}$/i; 
 	return p.test(s);
}
//??; 
function isNumber(s){
	return !isNaN(s); 
}
//???; 
function isColor(s){ 
	s = trim(s); 
	if (s.length !=7) return false; 
	return s.search(/\#[a-fA-F0-9]{6}/) != -1; 
}
//????; 
function isMobile(s){ 
	s = trim(s); 
	var p = /13\d{9}/; 
	return p.test(s);
}
//???;
function isCard(s){ 
	s = trim(s); 
	var p = /^\d{15}(\d{2}[xX0-9])?$/; 
	return p.test(s);
}
//URL;
function isURL(s){
	s = trim(s).toLowerCase();
	var p = /^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/;
	return p.test(s);
}
//Phone;
function isPhone(s){
	s = trim(s);
	var p = /^((\(\d{3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}$/;
	return p.test(s);
}
//Zip;
function isZip(s){
	s = trim(s);
	var p = /^[1-9]\d{5}$/;
	return p.test(s);
}
//Double;
function isDouble(s){
	s = trim(s);
	var p = /^[-\+]?\d+(\.\d+)?$/;
	return p.test(s);
}
//Integer;
function isInteger(s){
	s = trim(s);
	var p = /^[-\+]?\d+$/;
	return p.test(s);
}
//English;
function isEnglish(s){
	s = trim(s);
	var p = /^[A-Za-z]+$/;
	return p.test(s);
}
//??;
function isChinese(s){
	s = trim(s);
	var p = /^[\u0391-\uFFE5]+$/;
	return p.test(s);
}
//???
function isDoubleChar(s){
	var p = /^[^\x00-\xff]+$/;
	return p.test(s);
}
//??????
function hasChineseChar(s){
	var p = /[^\x00-\xff]/;
	return p.test(s);
}
function hasAccountChar(s){
	var p = /^[a-zA-Z0-9][a-zA-Z0-9_-]{0,15}$/;
	return p.test(s);
}
function limitLen(s,Min,Max){
	s=trim(s);
	if(s=="") return false;
	if((s.length<Min)||(s.length>Max))
		return false;
	else
		return true;
}
//����
function CopyText(id,msg) {
	try{
		var targetText = document.getElementById(id);
		targetText.focus();
		targetText.select();
		var clipeText = targetText.createTextRange();
		clipeText.execCommand("Copy");
		alert(msg);
	}catch(e){}
}
