﻿
function $(id){
    return document.getElementById(id);
}

var isIE=window.ActiveXObject?true:false;



/// <summary>
/// 监听请求状态，并根据状态调用函数
/// </summary>
/// <param name="funName">请求返回时调用的函数</param>
/// <param name="context">上下文内容</param>
function getResponseResult(funName,context,obj){
    try{
        //alert(obj.readyState);
        if(obj.readyState==4){
            //alert(obj.status);
            if(obj.status==200){
                funName(obj.responseText,context);
            }
        }
    }catch(e){
        //alert(e.message)
    }
}


/// <summary>
/// 发送一个异步请求
/// </summary>
/// <param name="method">请求的Service方法</param>
/// <param name="args">用户密码</param>
/// <param name="context">上下文内容</param>
/// <param name="resultFun">请求返回时调用的函数</param>
/// <param name="isSynchro">是否同步请求</param>
function postAjaxXMLHttp(method,args,context,resultFun,isSynchro){
    var isAsyn=isSynchro?false:true;
    var callbackEvent=null;
    if(isIE)
        callbackEvent=new ActiveXObject("Microsoft.XMLHTTP");
    else
        callbackEvent=new XMLHttpRequest();
    var obj=new Object();
    obj.callback=resultFun;
    callbackEvent.onreadystatechange =function(){getResponseResult(resultFun,context,callbackEvent);};
    callbackEvent.open("POST","/"+method+".do",isAsyn);
    callbackEvent.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    callbackEvent.send(args);
}

/// <summary>
/// 保存到cookie
/// </summary>
/// <param name="cookieStr">cookie字符串</param>
/// <param name="isExpiration">设置其是否过期</param>
function setCookie(cookieName,cookieValue,isExpiration){
    var expiration;
    if(isExpiration)
        expiration=new Date((new Date()).getTime() - 1);
    else
        expiration=new Date((new Date()).getTime() + 12*3600*1000);
    
    document.cookie=cookieName+" = "+encodeURI(cookieValue)+ ";expires =" + expiration.toGMTString() + ";path=/";
}

/// <summary>
/// 从cookie中读取值
/// </summary>
/// <param name="reg">正则表达式</param>
/// <returns>返回一个字符串</returns>
function getCookie(reg,replacereg){
    var result;
    var array=decodeURI(document.cookie).match(reg);
    if(array&&array.length==1){
        result=decodeURI(array[0].replace(replacereg,''));
    }
    return result;
}