0

我在生产服务器上收到对象预期错误,但不是我的预览服务器。唯一的区别(据我所知)是我的预览服务器使用的是旧版本的 IIS。但是我不知道为什么会导致这个错误?

错误在我的 HTML 中的这一行:

<input type="text" id="txt1" onkeyup="showHint(this.value)" name="txtprjName" tabindex="1" size="100" maxlength="50" />
<span id="txtHint"></span> 

showHint 是指与 HTML 文件位于同一目录中的外部 javascript 文件。

<script language="javascript" type="text/javascript" src="clienthint.js"></script>

clienthint.js 的内容是这样的:

var xmlHttp
function showHint(str){
    if (str.length==0){ 
        document.getElementById("txtHint").innerHTML="";
        return;
    }
    xmlHttp=GetXmlHttpObject()
    if (xmlHttp==null){
        alert ("Your browser does not support AJAX!");
        return;
    } 
    var url="gethint.asp";
    url=url+"?q="+str;
    url=url+"&sid="+Math.random();
    xmlHttp.onreadystatechange=stateChanged;
    xmlHttp.open("GET",url,true);
    xmlHttp.send(null);
} 
function stateChanged() { 
    if (xmlHttp.readyState==4){ 
        document.getElementById("txtHint").innerHTML=xmlHttp.responseText;
    }
}
function GetXmlHttpObject(){
    var xmlHttp=null    
    try{
        // Internet Explorer
        xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    }catch (e){
        try{
            // Internet Explorer
            xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
        }catch (e){
            // Firefox, Opera 8.0+, Safari
            xmlHttp=new XMLHttpRequest();
        }
    }
    return xmlHttp;
}

不知道为什么这不起作用?有任何想法吗?谢谢。

4

1 回答 1

0

我将 javascript 移动到主网页,而不是将其包含在外部,并且代码现在可以工作。

于 2012-07-25T18:45:26.803 回答