用javascript实现AJAX功能(不需要xmlhttp对象)
来源:互联网 发布:神奇百货 知乎 编辑:程序博客网 时间:2024/05/21 22:38
function AjaxScript(url, varName, params, onsuccess)
{
var arr = document.getElementsByTagName("script");
var url =url.toLowerCase();
var isLoad = true;
if (arr)
{
for(i=0; i<arr.length; i++)
{
var src = arr[i].src;
if (src)
{
if (src.toLowerCase() == url) { isLoad = false; }
}
}
}
if (isLoad)
{
var s = document.createElement("script");
var params = (params ? params : "") + (params && varName ? "&" : "") + (varName ? "varName=" + varName : "")
if (url.indexOf("?") >= 0)
{
url += (params && params != "" ? "&" + params : "");
}
else
{
url += (params && params != "" ? "?" + params : "");
}
s.src = url;
s.type = "text/javascript";
s.onreadystatechange = function()
{
switch(this.readyState)
{
case "complete":
case "loaded":
var cmd = "try { if (onsuccess) { onsuccess({0}); {1} } }catch(e){}".format((varName != null ? varName : ""), (varName != null ? "delete {0}".format(varName) : "") )
eval(cmd);
break;
case "loading":
break;
}
}
s.onload = function() {
var cmd = "try { if (onsuccess) { onsuccess({0}); {1} } }catch(e){}".format((varName != null ? varName : ""), (varName != null ? "delete {0}".format(varName) : "") )
eval(cmd);
}
var arr = document.getElementsByTagName("head");
var h= arr[0];
document.body.appendChild(s);
}
else
{
eval("if (onsuccess) { onsuccess({0}); }".format( varName != null ? varName : "" ));
}
}
{
var arr = document.getElementsByTagName("script");
var url =url.toLowerCase();
var isLoad = true;
if (arr)
{
for(i=0; i<arr.length; i++)
{
var src = arr[i].src;
if (src)
{
if (src.toLowerCase() == url) { isLoad = false; }
}
}
}
if (isLoad)
{
var s = document.createElement("script");
var params = (params ? params : "") + (params && varName ? "&" : "") + (varName ? "varName=" + varName : "")
if (url.indexOf("?") >= 0)
{
url += (params && params != "" ? "&" + params : "");
}
else
{
url += (params && params != "" ? "?" + params : "");
}
s.src = url;
s.type = "text/javascript";
s.onreadystatechange = function()
{
switch(this.readyState)
{
case "complete":
case "loaded":
var cmd = "try { if (onsuccess) { onsuccess({0}); {1} } }catch(e){}".format((varName != null ? varName : ""), (varName != null ? "delete {0}".format(varName) : "") )
eval(cmd);
break;
case "loading":
break;
}
}
s.onload = function() {
var cmd = "try { if (onsuccess) { onsuccess({0}); {1} } }catch(e){}".format((varName != null ? varName : ""), (varName != null ? "delete {0}".format(varName) : "") )
eval(cmd);
}
var arr = document.getElementsByTagName("head");
var h= arr[0];
document.body.appendChild(s);
}
else
{
eval("if (onsuccess) { onsuccess({0}); }".format( varName != null ? varName : "" ));
}
}
- 用javascript实现AJAX功能(不需要xmlhttp对象)
- javascript创建xmlHttp对象应用于ajax
- ajax xmlhttp对象详解
- javascript xmlhttp 对象应用
- 利用 Microsoft.XMLHTTP/XMLHttpRequest 对象 实现Ajax技术 的总结
- 用Asp+XmlHttp实现RssReader功能
- 用Asp+XmlHttp实现RssReader功能
- javascript的xmlhttp实现
- javascript的xmlhttp实现
- Ajax XMLHttp 对象的获取
- javascript xmlhttp实现文件下载
- JavaScript调用函数不需要对象
- HTML+javascript+aspx+c#实现ajax功能
- 【Javascript】原生js实现ajax功能
- AJAX的核心XMLHTTP对象及其方法
- XMLHTTP对象的一个应用(AJAX)
- 【转载】ajax中获取xmlHttp对象方法
- Ajax:创建xmlhttp对象的通用文件
- JBoss AS 4.2不能通过IP地址访问的解决方法
- The Inventor Mentor-第一章 综述
- Linux下多线程,断点续传,命令行下载工具axel
- Enterprise Library May 2007 Data Access Application Block的使用
- 列转行SQL
- 用javascript实现AJAX功能(不需要xmlhttp对象)
- 不要在感情方面留下承诺。
- 从编程中悟出的八个字
- c、c++程序的存储空间布局
- ORACLE函数大全
- 微软面试之我见(2)---- 中国测试的尴尬
- 【转】CListCtrl 使用技巧
- 别再拿“技术”说事——位手机研发人员的心灵独白(上)
- jsf必看的一些东西