1. 程式人生 > >多可文件管理系統頁面動態刷新技術

多可文件管理系統頁面動態刷新技術

多可文件管理系統是一個基於B/S結構(Browser/Server,瀏覽器/伺服器模式)的系統,頁面中大量使用了局部動態刷新技術。JavaScript函式如下:

function compressResult(url, params)

{

var style = "";

if (params == null || params == "")

style = "GET";

else

style = "POST";

var isIeClient = (navigator.userAgent.indexOf("MSIE") >= 0) ? true : false;

if (isIeClient)

{

var len = 0;

    if (params != null)

        len = params.length;

    var result;

    var XMLHTTP;

    try

{

        XMLHTTP = new ActiveXObject("Microsoft.XMLHTTP");

        if(!XMLHTTP) XMLHTTP = new ActiveXObject("MSXML2.XMLHTTP");

     }

    catch(e)

{

        return "";

    }

    XMLHTTP.Open(style, encodeURI(url), false);

    XMLHTTP.setRequestHeader("Content-Length", len);   

XMLHTTP.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=utf-8");

    XMLHTTP.Send(params);

    if(XMLHTTP.readyState==4)

{

    if(document.defaultCharset=="utf-8" && navigator.userLanguage=="zh-cn")

{

    result = unescape(XMLHTTP.responseText);

    }

    else

    {

    result = XMLHTTP.responseText;

    }

                }

    else

{

    result = "";

     }

    delete XMLHTTP;

    return result;

}

else

{

g_tmp_txt = "";

g_xmlHttp = new XMLHttpRequest();

g_xmlHttp.onreadystatechange = processReqChange;

g_xmlHttp.open(style, url, false);

g_xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=utf-8");

g_xmlHttp.send(params);

        if(g_xmlHttp.readyState == 4)

{

           if(g_xmlHttp.status == 200)

{

               g_tmp_txt = g_xmlHttp.responseText;

           }

         }

delete g_xmlHttp;

return g_tmp_txt;

}

}