【问题标题】:ajax script working with firefox but not ie6ajax 脚本使用 firefox 但不是 ie6
【发布时间】:2010-08-27 22:46:28
【问题描述】:

我有这个 ajax 函数在 Firefox 中运行良好,而不是在 ie6 中 ie有一些具体问题吗? 错误在这一行

document.getElementById(containerid).innerHTML=page_request.responseText

这是我正在使用的完整代码

  var bustcachevar=1 //bust potential caching of external pages after initial request? (1=yes, 0=no)
var loadedobjects=""
var rootdomain="http://"+window.location.hostname
var bustcacheparameter=""

function ajaxpage(url, containerid){
    var page_request = false
    if (window.XMLHttpRequest) // if Mozilla, Safari etc
        page_request = new XMLHttpRequest()
    else if (window.ActiveXObject){ // if IE
        try {
            page_request = new ActiveXObject("Msxml2.XMLHTTP")
        }
        catch (e){
            try{
                page_request = new ActiveXObject("Microsoft.XMLHTTP")
            }
            catch (e){}
        }
    }
    else
        return false
    page_request.onreadystatechange=function(){
        loadpage(page_request, containerid)
    }
    if (bustcachevar) //if bust caching of external page
        bustcacheparameter=(url.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()
    page_request.open('GET', url+bustcacheparameter, true)
    page_request.send(null)
}

function loadpage(page_request, containerid){
    if (page_request.readyState == 4 && (page_request.status==200 || 

window.location.href.indexOf("http")==-1))
////////////////////// here is the error line pointed by ie debugger/////////
            document.getElementById(containerid).innerHTML=page_request.responseText
////////////////////////////// 
}

感谢您的回答

【问题讨论】:

    标签: javascript ajax firefox internet-explorer-6


    【解决方案1】:

    尝试使用类似的东西 - 或检查 jQuery

    function isIE(){return/msie/i.test(navigator.userAgent)&&!/opera/i.test(navigator.userAgent);}
    
    function parseFile(filename)
    {
        try
        {
            if(isIE())
            {var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");}
            else
            {var xmlhttp=false;}
            if(!xmlhttp&&typeof XMLHttpRequest!='undefined')
            {
                try
                {xmlhttp=new XMLHttpRequest();}
                catch(e)
                {xmlhttp=false;}
            }
            if(!xmlhttp&&window.createRequest)
            {
                try
                {xmlhttp=window.createRequest();}
                catch(e)
                {xmlhttp=false;}
            }
    
            xmlhttp.open("GET",filename);
            xmlhttp.onreadystatechange=function()
            {
            if(xmlhttp.readyState==4)
            {   
                return xmlhttp.responseText;
            }
        }
        xmlhttp.send(null);
    }
    catch(e)
    {
        alert(e);
    }
    }
    

    【讨论】:

      猜你喜欢
      • 2013-09-06
      • 1970-01-01
      • 2011-01-20
      • 1970-01-01
      • 1970-01-01
      • 2011-09-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多