如何处理在同一张网页中多个部分同时进行AJAX加载导致的冲突问题?
就是说,在一张网页中,多个元素同时使用ajax技术加载别的网页,在这种情况下似乎会导致冲突,现象就是这多个加载对象似乎只有最后那个元素会正确加载,而其他元素一直处于非(x...
就是说,在一张网页中,多个元素同时使用ajax技术加载别的网页,在这种情况下似乎会导致冲突,现象就是这多个加载对象似乎只有最后那个元素会正确加载,而其他元素一直处于非(xmlhttp.readyState==4 && xmlhttp.status==200)的状态。
备注:是不是因为我使用的同一个函数进行局部更新所致,有什么解决方法吗?还是因为同时加载的时候用的是同一个xmlhttp所致呢?
附上自己写的加载函数:
var xmlhttp;
function loadXMLDoc(name,url,cfunc)
{
if (url==0)
{
document.getElementById(name).innerHTML="";
return;
}
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
var tempurl=url+"?t="+Math.random()
xmlhttp.onreadystatechange=cfunc;
xmlhttp.open("GET",tempurl,true);
xmlhttp.send();
}
function loadingasp(name,url)
{
loadXMLDoc(name,url,function()
{
if (xmlhttp.readyState<4)
{
document.getElementById(name).innerHTML="<object width='120' height='100' classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#4,0,0,0'><param name='SRC' value='../pictrue/loading.swf'><embed src='../pictrue/loading.swf'></embed></object>";
}
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById(name).innerHTML=unescape(xmlhttp.responseText);
}
}
);
} 展开
备注:是不是因为我使用的同一个函数进行局部更新所致,有什么解决方法吗?还是因为同时加载的时候用的是同一个xmlhttp所致呢?
附上自己写的加载函数:
var xmlhttp;
function loadXMLDoc(name,url,cfunc)
{
if (url==0)
{
document.getElementById(name).innerHTML="";
return;
}
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
var tempurl=url+"?t="+Math.random()
xmlhttp.onreadystatechange=cfunc;
xmlhttp.open("GET",tempurl,true);
xmlhttp.send();
}
function loadingasp(name,url)
{
loadXMLDoc(name,url,function()
{
if (xmlhttp.readyState<4)
{
document.getElementById(name).innerHTML="<object width='120' height='100' classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#4,0,0,0'><param name='SRC' value='../pictrue/loading.swf'><embed src='../pictrue/loading.swf'></embed></object>";
}
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById(name).innerHTML=unescape(xmlhttp.responseText);
}
}
);
} 展开
2个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询