繁体   English   中英

在javascript中显示未知名称时出错

[英]Error showing unknown name in javascript

我从下拉框中选择一个选项,调用onchange功能,其中包含functin retrieveurl(url,formbean); 代码写的。

它调用用javascript编写的ajax,它无法检测我的浏览器版本,即IE6.0.2900 ....

以下代码我用过......

try {

  req = new ActiveXObject("Msxml2.XMLHTTP");

} catch (e) {

   try {

      req = new ActiveXObject("Microsoft.XMLHTTP");

   } catch {

       alert('second catch');
   }

}

我调试它来到第二个捕获警报

谁可以帮我这个事??

在第二次捕获声明中错过了捕获* (e) *

try
{
    req = new ActiveXObject("Msxml2.XMLHTTP");
}

catch(e)
{
    try
    {
        req = new ActiveXObject("Microsoft.XMLHTTP");
    }

    catch(e)
    {
        alert('second catch');
    }
}

更新:我还建议使用所有版本的MS XML HTTP对象

function getHTTPRequest () 
{
    var xmlHttp;
    try 
    {
        // Firefox, Chrome, Opera, IE 8
        xmlHttp = new XMLHttpRequest();
    } 
    catch (err) 
    {
        // IE and possible XML HTTP ProIDs
        var XmlHttpVersions = new Array(
                            "Msxml2.XMLHTTP.7.0",
                            "Msxml2.XMLHTTP.6.0",
                            "Msxml2.XMLHTTP.5.0",
                            "Msxml2.XMLHTTP.4.0",
                            "MSXML2.XMLHTTP.3.0",
                            "MSXML2.XMLHTTP",
                            "Microsoft.XMLHTTP"
                            );
        for (var i=0; i<XmlHttpVersions.length && !xmlHttp; i++) 
        {
            try 
            {
                xmlHttp = new ActiveXObject(XmlHttpVersions[i]);
            }
            catch(err) {} //Ignore


        }        
    }

    if(!xmlHttp) 
    {
        alert("No HttpRequest supported");
    }
    else 
    {
        return xmlHttp;
    }
}

var xhr = getHTTPRequest();

据我所知,这应该适用于IE6。 但你错过了第二次捕获中的(e)参数,可能应该存在。 也许这搞砸了? 对不起,我无法检查,没有IE6。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM