XMLHTTPRequest 的封装--Render
来源:互联网 发布:vscode golang 跳转 编辑:程序博客网 时间:2024/06/05 05:25
Function.registerNamespace("net.bingosoft.web");
net.bingosoft.web.Render = function()...{
net.bingosoft.web.Render.initializeBase(this);
var _xmlUrl = null;
var _xslUrl = null;
var _callbackMethod = null;
var _xmlMethod = null;
var _httpBody = null;
var _args = null;
var _xmlDom = null;
var _xslDom = null;
var _validateXMLDOM = null;
var _args = null;
var _self = this;
this.getXmlDom = function()...{
return _xmlDom;
}
this.getXslDom = function()...{
return _xslDom;
}
this.transform = function(xmlUrl, xslUrl, callbackName, xmlMethod, httpBody, args)...{
_xmlUrl = xmlUrl;
_xslUrl = xslUrl;
_callbackMethod = callbackName;
_xmlMethod = xmlMethod || "POST"
_httpBody = httpBody;
_args = args || null;
if(typeof(_xmlUrl.xml) != "undefined")
_xmlDom = _xmlUrl;
else ...{
var xmlhttpXML = new net.bingosoft.web.Sender();
xmlhttpXML.send(_xmlUrl,_xmlMethod,_self._xmlCallback,_httpBody);
xmlhttpXML = null;
}
if(typeof(_xslUrl.xml) != "undefined") ...{
_xslDom = _xslUrl;
} else ...{
var xmlhttpXSL = new net.bingosoft.web.Sender();
xmlhttpXSL.send(_xslUrl, "GET", _self._xslCallback);
xmlhttpXSL = null;
}
if(typeof(_xmlUrl.xml) != "undefined" && typeof(_xslUrl.xml) != "undefined") ...{
_self._onDataReady();
}
}
this._xmlCallback = function(xmlDom) ...{
_xmlDom = xmlDom;
_self._onDataReady();
}
this._xslCallback = function(xslDom) ...{
_xslDom = xslDom;
_self._onDataReady();
}
this._onDataReady = function() ...{
if(_xmlDom == null || _xslDom == null)
return;
if(_validateXMLDOM!=null) ...{
if(!_validateXMLDOM(_xmlDom)) ...{
if(loadingHide)loadingHide();
return;
}
}
var html = _self._transformNode();
_callbackMethod(html);
}
this._transformNode = function() ...{
var result = null;
try ...{
if(window.ActiveXObject) ...{
if(_args == null) ...{
result = _xmlDom.transformNode(_xslDom);
} else ...{
var xslDoc=new ActiveXObject("MSXML2.FreeThreadedDOMDocument");
_xslDom.save(xslDoc);
_xslDom = null;
var xslTemplate=new ActiveXObject("MSXML2.XSLTemplate");
xslTemplate.stylesheet=xslDoc;
var xslProcessor=xslTemplate.createProcessor();
if(_args!=null) ...{
for(var name in _args) ...{
xslProcessor.addParameter(name,_args[name]);
}
}
xslProcessor.input=_xmlDom;
xslProcessor.transform();
result = xslProcessor.output;
xslDoc = null;
xslTemplate = null;
xslProcessor = null;
}
} else if(window.XMLHttpRequest) ...{
var xslProcessor = new XSLTProcessor();
xslProcessor.importStylesheet(_xslDom);
if(_args!=null) ...{
for(var name in _args) ...{
xslProcessor.setParameter(null,name,_args[name]);
}
}
result = xslProcessor.transformToFragment(_xmlDom,document);
xslProcessor = null;
} else ...{
throw new Error("Could not transform xml on this browser");
}
} catch(e) ...{
throw e;
} finally ...{
_args = null;
}
return result;
}
}
net.bingosoft.web.Render.registerClass("net.bingosoft.web.Render", null, null);
var $render = new net.bingosoft.web.Render();
net.bingosoft.web.Render = function()...{
net.bingosoft.web.Render.initializeBase(this);
var _xmlUrl = null;
var _xslUrl = null;
var _callbackMethod = null;
var _xmlMethod = null;
var _httpBody = null;
var _args = null;
var _xmlDom = null;
var _xslDom = null;
var _validateXMLDOM = null;
var _args = null;
var _self = this;
this.getXmlDom = function()...{
return _xmlDom;
}
this.getXslDom = function()...{
return _xslDom;
}
this.transform = function(xmlUrl, xslUrl, callbackName, xmlMethod, httpBody, args)...{
_xmlUrl = xmlUrl;
_xslUrl = xslUrl;
_callbackMethod = callbackName;
_xmlMethod = xmlMethod || "POST"
_httpBody = httpBody;
_args = args || null;
if(typeof(_xmlUrl.xml) != "undefined")
_xmlDom = _xmlUrl;
else ...{
var xmlhttpXML = new net.bingosoft.web.Sender();
xmlhttpXML.send(_xmlUrl,_xmlMethod,_self._xmlCallback,_httpBody);
xmlhttpXML = null;
}
if(typeof(_xslUrl.xml) != "undefined") ...{
_xslDom = _xslUrl;
} else ...{
var xmlhttpXSL = new net.bingosoft.web.Sender();
xmlhttpXSL.send(_xslUrl, "GET", _self._xslCallback);
xmlhttpXSL = null;
}
if(typeof(_xmlUrl.xml) != "undefined" && typeof(_xslUrl.xml) != "undefined") ...{
_self._onDataReady();
}
}
this._xmlCallback = function(xmlDom) ...{
_xmlDom = xmlDom;
_self._onDataReady();
}
this._xslCallback = function(xslDom) ...{
_xslDom = xslDom;
_self._onDataReady();
}
this._onDataReady = function() ...{
if(_xmlDom == null || _xslDom == null)
return;
if(_validateXMLDOM!=null) ...{
if(!_validateXMLDOM(_xmlDom)) ...{
if(loadingHide)loadingHide();
return;
}
}
var html = _self._transformNode();
_callbackMethod(html);
}
this._transformNode = function() ...{
var result = null;
try ...{
if(window.ActiveXObject) ...{
if(_args == null) ...{
result = _xmlDom.transformNode(_xslDom);
} else ...{
var xslDoc=new ActiveXObject("MSXML2.FreeThreadedDOMDocument");
_xslDom.save(xslDoc);
_xslDom = null;
var xslTemplate=new ActiveXObject("MSXML2.XSLTemplate");
xslTemplate.stylesheet=xslDoc;
var xslProcessor=xslTemplate.createProcessor();
if(_args!=null) ...{
for(var name in _args) ...{
xslProcessor.addParameter(name,_args[name]);
}
}
xslProcessor.input=_xmlDom;
xslProcessor.transform();
result = xslProcessor.output;
xslDoc = null;
xslTemplate = null;
xslProcessor = null;
}
} else if(window.XMLHttpRequest) ...{
var xslProcessor = new XSLTProcessor();
xslProcessor.importStylesheet(_xslDom);
if(_args!=null) ...{
for(var name in _args) ...{
xslProcessor.setParameter(null,name,_args[name]);
}
}
result = xslProcessor.transformToFragment(_xmlDom,document);
xslProcessor = null;
} else ...{
throw new Error("Could not transform xml on this browser");
}
} catch(e) ...{
throw e;
} finally ...{
_args = null;
}
return result;
}
}
net.bingosoft.web.Render.registerClass("net.bingosoft.web.Render", null, null);
var $render = new net.bingosoft.web.Render();
- XMLHTTPRequest 的封装--Render
- XMLHTTPRequest 的封装--Binder
- XMLHTTPRequest 的封装--Sender
- XMLhttpRequest 封装
- 对AJAX中XMLHttpRequest的封装
- xmlHttpRequest封装类
- JS-封装 ajax XmlHttpRequest
- JavaScript 自定义封装XMLHttpRequest
- 得到XmlHttpRequest对象封装的函数,支持ie和firefox
- Ajax中封装创建XMLHttpRequest对象的方法
- Ajax中封装创建XMLHttpRequest对象的方法
- 【Ajax 2】封装Ajax的核心对象:XMLHttpRequest对象
- RN中也可用的网络库封装,基于xmlhttprequest~
- Ajax应用示例: XMLHttpRequest封装
- React.render和reactDom.render的区别
- React.render和reactDom.render的区别
- React.render和reactDom.render的区别
- app.render和res.render的区别
- 面向对象的思想的javaScrip使用 总结
- 唐伯虎点秋香经典台词完整版(周星驰)
- XPATH笔记
- 在XSL文件里应用javascript
- 在没有Framework的机器上部署.NET程序
- XMLHTTPRequest 的封装--Render
- XMLHTTPRequest 的封装--Binder
- XMLHTTPRequest 的封装--Sender
- oop设计原则
- HTML页面输入验证
- DHTML+JAVAScript学习资源
- 在.NET程序中小心使用String类型
- .net 接口示例
- 正则表达式验证日期和Email