﻿/*
 * 功能：去除字符首尾空格
 * 参数：inputString - 执行去除空格的字符串
 * 返回：string(返回首尾空格的字符)
 */
function trim(inputString) {
	if (typeof inputString != "string") { return inputString; }
	var retValue = inputString;
	var ch = retValue.substring(0, 1);
	while (ch == " ") {
		//检查字符串开始部分的空格
		retValue = retValue.substring(1, retValue.length);
		ch = retValue.substring(0, 1);
	}
	
	ch = retValue.substring(retValue.length-1, retValue.length);
	while (ch == " ") {
		//检查字符串结束部分的空格
		retValue = retValue.substring(0, retValue.length-1);
		ch = retValue.substring(retValue.length-1, retValue.length);
	}
	
	while (retValue.indexOf("  ") != -1) {
		//将文字中间多个相连的空格变为一个空格
		retValue = retValue.substring(0, retValue.indexOf("  ")) + retValue.substring(retValue.indexOf("  ")+1, retValue.length);
	}
	
	return retValue;
}

/*
 * 功能：下拉联动
 * 参数：pValue  - 上级下拉选定值
 *       cId     - 下级下拉ID
 *       cValue  - 下级下拉默认值
 *       aList   - 下拉组,格式：Array(pValue, cValue, cName);
 *       addText - 追加项文本
 *       addValue- 追加项值
 */
function changeDropDownList(pValue, cId, cValue, aList, addText, addkValue){
    var oChild = document.getElementById(cId);
    oChild.length = 0;
    if (addText!="" || addValue!=""){
        oChild.options[0] = new Option(addText, addkValue);
    }
    for (var i=0; i<aList.length; i++){
        if (aList[i][0]==pValue){
            oChild.options[oChild.options.length] = new Option(aList[i][2], aList[i][1]);
            if (aList[i][1]==cValue){
                oChild.options[oChild.options.lenght-1].selected = true;
            }
        }
    }
}

/*
 * 功能：检查是邮箱格式是否正确
 * 参数：email - 检查的邮箱字符串
 * 返回：bool(格式正确返回true，否则返回false)
 */
function isEmail(email){
	var re = /^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.){1,4}[a-z]{2,3}$/i;
	return re.test(email);
}

/*
 * 功能：检查字符串是否为日期格式
 * 参数：date - 日期字符串
 * 返回：bool(日期格式正确返回true，否则返回false)
 */
function isDate(date){
	if (/^\d{4}[-,\.,\/]\d{1,2}[-,\.,\/]\d{1,2}$/.test(date)==false) return(false);
	date = date.replace(".", "-").replace("/", "-");
	var r=date.split("-");
	var dayArray=new Array(31,28,31,30,31,30,31,31,30,31,30,31);
	if (((r[0]%4==0)&&(r[0]%100!=0))||(r[0]%100==0&&r[0]%400==0)) dayArray[1]=29;
	if (r[1]==0||r[1]>12) return(false);
	if ((r[0]<0||r[0]>9999)||(r[2]==0||r[2]>dayArray[r[1]-1])) return(false);
	return(true);
}

/*
 * 功能：检查字符串是否为浮点小数
 * 参数：num - 检查字符串
 * 返回：bool
 */
function isFloat(num){
    var re = /^[+\-]?\d+(.\d+)?$/;
    return re.test(num);
}

/*
 * 功能：检查值是否是undefined
 * 参数：variabled - 检查对像
 * 返回：bool
 */
function isUndefined(variable) {
	return typeof variable == 'undefined' ? true : false;
}

/*
 * 功能：检查值是否是验证码
 * 参数：code - 检查对像
 * 返回：bool
 */
function isVerifyCode(code){
    var re = /^[\d,a-z]{4,5}$/i;
    return re.test(code);
}

/*
 * 功能：检查字符是否为邮政编码格式
 * 参数：code - 邮政编码字符
 * 返回：bool(邮政编码正确返回true，否则返回false)
 */
 function isZipcode(code){
    var re = /^\d{6}$/;
    return (re.test(code));
 }
 
/*
 * 功能：检查字符是否由数字组成
 * 参数：str - 检查字符
 * 返回：bool
 */
function isNumeric(str){
    var re = /^\d{1,}$/;
    return re.test(str);
}

/*
 * 功能：无刷新提交
 * 参数：url - 提交地址
 * 返回：string(提交返回页面字符)
 */
function xmlHttpPost(url){
	var oRe=new ActiveXObject("Microsoft.XMLHTTP");
	oRe.open("post", url, false);
	oRe.send();
	
	try{
		return oRe.ResponseText;
	}
	catch(e){
		return "";
	}
}

/*
 * 功能：读取地址栏传递参数值
 * 参数：name － 参数名
 * 返回：string(参数值)
 */
function requestQueryString(name){
    var sUrl = document.location.search;
    
    if (sUrl=="" || sUrl.indexOf("?")==-1){
        return "";
    }else{
        sUrl = sUrl.substr(1);
    }
    
    var sValue;
    var aItem = sUrl.split("&");
    for (var i=0; i<aItem.length; i++){
        sValue = trim(aItem[i].split("="));
        if (sValue.length==2){
            if (name.toLowerCase()==sValue[0].toLowerCase()){
                return sValue[1];
                break;
            }
        }
    }
    
    return "";
}

/*
 * 功能：设置Cookie值
 * 参数：name - 键名， value - 键值， day - 保存天数(0-关闭浏览器失效)
 * 返回：(无)
 */
function setCookie(name, value){
    setCookie2(name, value, 0);
}
function setCookie2(name, value, day){
    var sCookie = name + "=" + escape(value) +"; path=/; ";
    if (day>0){
        var ms = day * 24 * 60 * 60 * 1000;
        var oDate = new Date();
        oDate.setTime(oDate.getTime() + ms);
        sCookie += "expires="+ oDate.toGMTString() + "; ";
    }
    document.cookie = sCookie;
}

/*
 * 功能：取Cookie值
 * 参数：name - 键名
 * 返回：string(键值)
 */
function getCookie(name){
    if (document.cookie.length>0){
        var aItem;
        var aCookie = document.cookie.split(";");
        for (var i=0; i<aCookie.length; i++){
            aItem = aCookie[i].split("=")
            if (aItem.length>=2){
                if (trim(aItem[0])==name) return unescape(trim(aItem[1]));
            }
        }
    }
    return "";
}

/* 功能：删除Cookie值
 * 参数：name - 键名
 * 返回：(无)
 */
function delCookie(name){
    setCookie(name, "");
}

/*
 * 功能：取浏览器类型
 * 参数：(无)
 * 返回：string(浏览器简写名称)
 */
function navigatorType(){
    var sAgent = navigator.userAgent.toLowerCase();
    
    if (sAgent.indexOf("msie")!=-1){
        return "ie";
    }else if (sAgent.indexOf("opera")!=-1){
        return "opera";
    }else if (sAgent.indexOf("firefox"!=-1)){
        return "firefox";
    }else if (sAgent.indexOf("netscape")!=-1){
        return "netscape";
    }else if (sAgent.indexOf("safari")!=-1){
        return "safari";
    }else{
        return navigator.appName;
    }
}

/*
 * 功能：全选/反选Checkbox
 * 参数：name - 被操作checkbox的name
 * 返回：(无)
 */
function selectAll(name){
    var oCb = document.getElementsByName(name);
    if (oCb){
        for (var i=0; i<oCb.length; i++){
            oCb[i].checked = !oCb[i].checked;
        }
    }
}

/*
 * 功能：检查全选/反选状态
 * 参数：id - 全选/反选checkbox的Id
 *     ：name - 被操作checkbox的name
 * 返回：(无)
 */
function checkSelectAll(id, name){
    var oAll = document.getElementById(id);
    var oCb = document.getElementsByName(name);
    if (oAll && oCb){
        var Count = 0;
        for (var i=0; i<oCb.length; i++){
            if (oCb[i].checked) Count++;
        }
        if (Count==oCb.length && Count>0){
            oAll.checked = true;
        }else{
            oAll.checked = false;
        }
    }
}

/*
 * 功能：设置下拉默认选项
 * 参数：sel - Select 的ID
 *       value - 默认项值
 * 返回：(无)
 */
function setSelectDefault(SelId, Val){
    var oSel = document.getElementById(SelId);
    if (oSel){
        for (var i=0; i<oSel.options.length; i++){
            if (oSel.options[i].value==Val){
                oSel.options[i].selected = true;
            }
        }
    }
}

/*
 * 功能：显示flash
 * 参数：sUrl - .swf文件位置
 *       iWidth - flash宽度
 *       iHeight - flash高度
 * 返回：(无)
 */
function writeFlash(sUrl, iWidth, iHeight){
	var sHtml = "<object classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0' width='"+iWidth+"' height='"+iHeight+"'>";
	sHtml += "<param name='movie' value='"+sUrl+"'>";
	sHtml += "<param name='quality' value='high'>";
	sHtml += "<param name='menu' value='false'>";
	sHtml += "<embed src='"+sUrl+"' quality='high' pluginspage='http://www.macromedia.com/go/getflashplayer' type='application/x-shockwave-flash' width='"+iWidth+"' height='"+iHeight+"' wmode='transparent'></embed>";
	sHtml += "</object>";
	
	document.write(sHtml);
}