多可文件管理系統頁面動態刷新技術
多可文件管理系統是一個基於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;
}
}