﻿function trim(value) { return value.replace(/(^\s+)|(\s+$)/g, ""); }

String.prototype.trim = function()
{
    // 用正则表达式将前后空格  
    // 用空字符串替代。  
    return this.replace(/(^\s*)|(\s*$)/g, "");
}

//判断是否为数字
function checkisnumber(o)
{
    var s = document.getElementById(o);
    var reg = /^[0-9]*$/;
    if (!reg.test(trim(s.value)))
    {
        return false;
    }
    else
    {
        return true;
    }
}

function checkIsNum(num)
{
    var reg = /^[0-9]*$/;
    if (!reg.test(num))
    {
        return false;
    }
    else
        return true;
}

function checkisfloat(o)
{
    var s = document.getElementById(o);
    if (s.value.indexOf(".") == -1)
    {
        return checkisnumber(o);
    }
    else
    {
        if (s.value.indexOf(".") == 0 || s.value.indexOf(".") == s.value.length - 1)
        {
            return false;
        }
        else
        {
            var q = s.value.split('.');
            if (q.length != 2)
            {
                return false;
            }
            else
            {
                if (checkIsNum(q[0]) && checkIsNum(q[1]))
                {
                    return true;
                }
                else
                    return false;
            }
        }
    }
}
//判断邮件格式
function checkisemail(o)
{
    var s = document.getElementById(o);
    var reg = /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/;
    if (!reg.test(trim(s.value)))
    {
        return false;
    }
    else
    {
        return true;
    }
}

//判断邮件格式，传入的参数为字符串
function CheckIsEMail(str)
{
    var reg = /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/;
    if (!reg.test(str))
    {
        return false;
    }
    else
    {
        return true;
    }
}

function check_number(pObj, errMsg)
{
    var obj = eval(pObj);
    strRef = "1234567890";
    //	if(!isEmpty(pObj,errMsg))return false;
    for (i = 0; i < obj.value.length; i++)
    {
        tempChar = obj.value.substring(i, i + 1);
        if (strRef.indexOf(tempChar, 0) == -1)
        {
            if (errMsg == null || errMsg == "")
            { alert("数据不符合要求,请检查"); }
            else { alert(errMsg); }
            if (obj.type == "text") { obj.focus(); }
            return false;
        }
    }
    return true;
}
function check_dbl(pObj, errMsg)
{
    var obj = eval(pObj);
    strRef = "1234567890.";
    //	if(!isEmpty(pObj,errMsg))return false;
    for (i = 0; i < obj.value.length; i++)
    {
        tempChar = obj.value.substring(i, i + 1);
        if (strRef.indexOf(tempChar, 0) == -1)
        {
            if (errMsg == null || errMsg == "")
            { alert("数据不符合要求,请检查"); }
            else { alert(errMsg); }
            if (obj.type == "text") { obj.focus(); }
            return false;
        }
    }
    return true;
}
function check_empty(pObj, errMsg)
{
    var obj = eval(pObj);
    if (obj == null || trim(obj.value) == "")
    {
        if (errMsg == null || errMsg == "")
            alert("输入为空!");
        else
            alert(errMsg);
        obj.focus();
        return false;
    }
    return true;
}
function check_checked(pObj, errMsg)
{
    var obj = eval(pObj);
    if (obj == null || obj.length <= 0)
    {
        if (errMsg == null || errMsg == "")
        { alert("选择为空!"); }
        else
        { alert(errMsg); }

        obj.focus();
        return false;
    }
    else
    {
        var check_temp = false;
        for (var i = 0; i < obj.length; i++)
        {
            if (obj[i].checked)
            { check_temp = true; break; }
        }
        if (!check_temp)
        {
            if (errMsg == null || errMsg == "")
            { alert("选择为空!"); }
            else
            { alert(errMsg); }
            return check_temp;
        }
    }
    return true;
}
function trim(str)
{
    if (str.charAt(0) == " ")
    {
        str = str.slice(1);
        str = Trim(str);
    }
    return str;
}

//如果含有全角字符则返回false
function checkType(str)
{
    if (/^[\uFF00-\uFFFF]/.test(str))
    {
        return false;
    }
    else
        return true;
}

function checkEmail(strEmail)
{
    /^[_a-z0-9]+@([_a-z0-9]+\.)+[a-z0-9]{2,3}$/;
    var emailReg = /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/;
    if (emailReg.test(strEmail))
    {
        return true;
    }
    else
    {
        return false;
    }
}

//计算字符串长度
function strlen(str)
{
    var len = 0;
    for (var i = 0; i < str.length; i++)
    {
        if (str.charCodeAt(i) > 255 || str.charCodeAt(i) < 0) len += 2; else len++;
    }
    return len;
}

//统一的showModalDialog方法，大家用这个方法可以省很多代码细节
function MyShowModalDialog(url, width, height)
{
    var res = window.showModalDialog(url, window, "dialogWidth=" + width + "px;dialogHeight=" + height + "px; scroll:no;");
    if (res == true)
    {
        return true;
    }
    else
    {
        return false;
    }
}

function checkCountInput(strInput)
{
    if (strInput.keyCode > 58 || strInput.keyCode < 48)
    {
        if (strInput.keyCode != 8 && strInput.keyCode != 46)
        {
            if (strInput.keyCode != 37 && strInput.keyCode != 39)
            {
                if (strInput.keyCode > 105 || strInput.keyCode < 96)
                {
                    return false;
                }
            }
        }
    }

}

//更换验证图片
function ChangeCheckCode(imgId)
{
    var img = document.getElementById(imgId);
    if (img != null)
    {
        img.src = "../PublicClass/CheckCode.aspx?code=" + Math.random();
    }
}


//得到页面元素离页面上边框的总距离
function GetTotalTop(element)
{
    var top = 0;

    while (element != null)
    {
        top += element["offsetTop"];
        element = element.offsetParent;
    }

    return top;
}


//得到页面元素离页面左边框的总距离
function GetTotalLeft(element)
{
    var left = 0;

    while (element != null)
    {
        left += element["offsetLeft"];
        element = element.offsetParent;
    }

    return left;
}

//服务器端的checkList控件是否有一个被选中了
function IsCklHaveOneChecked(cklCtrl)
{
    var flag = false;

    var count = cklCtrl.cells.length;
    var id = cklCtrl.id;

    for (var i = 0; i < count; i++)
    {
        var ckId = id + "_" + i;
        var ckCtrl = document.getElementById(ckId);
        if (ckCtrl.checked == true)
        {
            flag = true;
            break;
        }
    }

    return flag;
}

//Show User Argeement
function showArgeementModalDialog()
{
    window.showModalDialog("../PublicClass/Argeement.htm", "", "dialogWidth=500px;dialogHeight=580px;dialogLeft=200px;dialogTop=100px;");
}

/* 描述: 验证是否是浮点数 */
function isDecimal(str)
{
    var regex = /^(([0-9]{1,}\.[0-9]{1,})|([0-9]{1,}))$/;
    if (!regex.test(str))
    {
        return false;
    }
    return true;
}

/* 描述: 验证是否是浮点数 */
function isDate(str)
{
    var result = str.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/);
    if (result != null)
    {
        var d = new Date(result[1], result[3] - 1, result[4]);
        var dflag = (d.getFullYear() == result[1] && d.getMonth() + 1 == result[3] && d.getDate() == result[4]);
        if (dflag == true)
        {
            return true;
        }
    }

    return false;
}

/*--页面垂直定位到某元素---------------------------------------------------------------------------*/

function ScrollToElement(obj)
{
    var pos = GetPositionOfElement(obj);
    var top = pos['y'];

    var divSiteAdminPopupScrollTmp = document.getElementById("divSiteAdminPopupScroll");
    if (divSiteAdminPopupScrollTmp == null)
    {
        //主页面
        scroll(0, top);
    }
    else
    {
        //弹出页面
        divSiteAdminPopupScroll.scrollTop = top;
    }
}

function GetPositionOfElement(obj)
{
    var r = new Array();
    r['x'] = obj.offsetLeft;
    r['y'] = obj.offsetTop;
    while (obj = obj.offsetParent)
    {
        r['x'] += obj.offsetLeft;
        r['y'] += obj.offsetTop;
    }
    return r;
}

//检验手机号码合法性
function CheckMobile(strctrl)
{
    var mobile = _GetElementById(strctrl);
    if (mobile == null)
        return false;
    if (mobile.value.length < 1)
        return true;
    var reg = /^(1[358]\d{9})$/;
    if (true == reg.test(mobile.value))
        return true;
    return false;
}

//检查电话号码
function CheckTel(strctrl)
{
    var tel = _GetElementById(strctrl);
    if (tel == null)
        return false;
    if (tel.value.length < 1)
        return true;

    var reg = /^(([0-9]{3,4}[0-9]{7,8})|([0-9]{3,4}\-[0-9]{7,8}))$/g;
    return reg.test(tel.value);
}

//校验(国内)邮政编码
function CheckPostalCode(strctrl)
{
    var postdode = _GetElementById(strctrl);
    var pattern = /^[0-9]{6}$/;
    if (postdode != null)
    {
        if (!pattern.exec(postdode.value))
        {
            return false;
        }
        else
            return true;
    }
    return false;
}

//分页控件gotoPage输入框，回车键相当于点击确定按钮
function OnTxtGoToPageKeyDown(txtCtrl)
{
    try
    {
        var txtClientId = txtCtrl.id;
        var txtServerId = "txtGoToPageIndex";
        var btnServerId = "btnGoToPage";
        var btnClientId = txtClientId.substr(0, txtClientId.length - txtServerId.length) + btnServerId;
        var btnCtrl = document.getElementById(btnClientId);

        if (event.keyCode == 13)
        {
            btnCtrl.click();
            event.returnValue = false;
            event.cancelBubble = true;
            return false;
        }
    }
    catch (ex) { }
}

function ForceCancel()
{
    try
    {
        event.returnValue = false;
        event.cancelBubble = true;
        return false;
    }
    catch (ex) { }
}

function showAllBrand()
{
    $(".fore").css("height", "100%");
    $(".bandlist").css("height", "100%");
    $("#showBrand").css("display", "none");
    $("#hideBrand").css("display", "inline");
}

function hideAllBrand()
{
    $(".fore").css("height", "13px");
    $(".bandlist").css("height", "13px");
    $("#showBrand").css("display", "inline");
    $("#hideBrand").css("display", "none");
}

function AutoResizeImage(maxWidth, maxHeight, objImg)
{
    if (typeof (objImg) == 'string')
    {
        objImg = $(objImg);
    }
    var img = new Image();
    img.onload = function()
    {
        var hRatio;
        var wRatio;
        var Ratio = 1;
        var w = img.width;
        var h = img.height;
        wRatio = maxWidth / w;
        hRatio = maxHeight / h;
        wRatio = wRatio > 1 ? 1 : wRatio;
        hRatio = hRatio > 1 ? 1 : hRatio;
        if (maxWidth == 0 && maxHeight == 0)
        {
            Ratio = 1;
        }
        else if (maxWidth == 0)
        {//
            if (hRatio < 1) Ratio = hRatio;
        }
        else if (maxHeight == 0)
        {
            if (wRatio < 1) Ratio = wRatio;
        }
        else
        {
            Ratio = (wRatio <= hRatio ? wRatio : hRatio);
        }
        if (Ratio < 1)
        {
            w = w * Ratio;
            h = h * Ratio;
        }
        objImg.height = h;
        objImg.width = w;
        this.onload = function() { }
    }
    img.src = objImg.src;
}

