<script language="javascript" type="text/javascript">

 // <!CDATA[

/**
 * 采用POST方式调用ajax后台函数
 *
 * @access  public
 * @param   sUrl:     请求的连接
 *          argValue: 传递的值参数
 *          func:     响应函数
 *          isSync:   是否不同步处理,true则不同步,false则同步
 * @author  yansheng 
* @create  2007/11/20
**/
function SendRequestPost(sUrl,argValue,func,isSync)
{//初始化、指定处理函数、发送请求的函数

    http_request = false;
   
    //开始初始化XMLHttpRequest对象
    if (window.XMLHttpRequest)
    { //Mozilla 浏览器
        http_request = new XMLHttpRequest();
        if (http_request.overrideMimeType)
        { //设置MiME类别
            http_request.overrideMimeType("text/xml");
        }
    }
    else if (window.ActiveXObject)
    { // IE浏览器
        try
        {
            http_request = new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch (e)
        {
            try
            {
                http_request = new ActiveXObject("Microsoft.XMLHTTP");
            }
            catch (e) {}
        }
    }
    if (!http_request)
    { // 异常,创建对象实例失败
        window.alert("Create XMLHttpRequest Object Failure!");
        return false;
    }
    //响应函数
   
    http_request.onreadystatechange = func;
    http_request.open("POST", sUrl, isSync);
    http_request.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
    http_request.send(argValue);
    http_request = null;
}

/**
 * ajax调用后台响应函数,处理send_request返回信息
 *
 * @access  public
 * @author  yansheng
 * @create  2007/11/20
**/
function CheckRequestPost()
{
    if(http_request.readyState==4)
    {
        if(http_request.status==200)
        {
            http_return = http_request.responseText;
        }
    }
    else
    {
        switch(http_request.readyState)     
        {
            case 0:
                http_return = "未初始化...";
                break;
            case 1:
                http_return = "加载中...";
                break;
            case 2:
                http_return = "连接完成...";
            case 3:
                http_return = "交换数据...";
            default:
                break;
        }
    }
}


==============================================================================================================
 * @author  yansheng9988
 * @create  2008/03/14
 * 通过后台构造popup显示的内容
 * @param1:sURL后台处理文件的路径
 * @param2:sPostStr后台文件的路径,画面传入的参数字符串,包括存储过程名称、参数字符串
 *         格式如:strAction=ShowPop&strProcrdureName=存储过程名称&strParameter=参数字符串
 注释:“strAction”是个标志,用来标注用使用后台的那个方法的。
 
**/
function CreatePop(sURL,sPostStr)
{
    var pos_x,pos_y,ta_width,ta_height;
    var sHtml = "";
   
    var pos_x,pos_y,ta_width,ta_height;
    var sHtml = "";
   
    //popup显示在画面的X坐标
   
        pos_x = event.x+10;
  
    //popup显示在画面的Y坐标
   
        pos_y = event.y-14;
   
    //popup的宽度
        ta_width = 300;
  
    //popup的高度  
        ta_height = 500;
    //CheckRequestPost是SendRequestPost函数的监听函数
    SendRequestPost(sURL,sPostStr,CheckRequestPost,false);//将文件同步处理。
    oPopupBody.style.backgroundColor  = "#FFFFFF";  
    oPopupBody.style.border  = "solid   black   1px";
    //http_return是CheckRequestPost方法执行后从服务器端接受到的返回字符串。(主要是花的表格!)
    sHtml = "<DIV style='overflow:auto;height:"+ta_height+"'>" + http_return + "</DIV>";
    //把返回的字符串放在popup中
    oPopupBody.innerHTML = sHtml;
    oPopup.show(pos_x,pos_y,ta_width,ta_height,document.body);
}

//显示数据的popup===========================================================

        function ShowPop(code)
        {
            var Sep1   = String.fromCharCode(1); //分割字符1
          
            var sUrl   = "http://www.cnblogs.com/../ajax/CallBackGound.aspx";   //后台文件的路径
         
            var ProcNm     = "0801_GetPriceBillView_POP";  //存储过程的名称
           
            var Pramvalue1 = code;  //存储过程需要的参数
            var strPost    = "strAction=ShowPop&strProcrdureName="+ProcNm+"&strParameter="+Pramvalue1;//参数字符串
      
            CreatePop(sUrl,strPost)
        }
//鼠标事件开始==============================================================

    /*
     *鼠标移动到行上激发的事件
     */
 function GridRowOnMouseOver(rowObj)
 {
  rowObj.className = "GridOnmouseOver";
 }
    /*
     *鼠标离开所在的行时的事件
     */
 function GridRowOnMouseOut(rowObj)
 {
  rowObj.className = "GridOnmouseOut";
  autoClose();
 }
 

   /*
     *双击该行的时候
     *code是该行的关键字用来,查询该行的详细的信息!
     */
  function RowClick(obj,code)
  {
   obj.className = "GridOnmouseOut";
   ShowPop(code);//显示popup         
  }
 
   /*
    * 关闭打开(隐藏)的Popup窗口
   */
    function ClosePop()
    {
        oPopup.hide();
    }
    //没有按钮自动关闭
    function autoClose()
    {
     window.setTimeout(ClosePopup,10);
    }
     //-->

</script>

posted on 2008-03-14 18:26  Stym--闫生  阅读(705)  评论(0编辑  收藏  举报