Javascript 未捕获类型错误:request.open不是函数

Javascript 未捕获类型错误:request.open不是函数,javascript,jquery,html,ajax,Javascript,Jquery,Html,Ajax,代码: //urlget.html ajaxget请求示例 将网页加载到DIV 这个句子将被替换 nocache=“&nocache=“+Math.random()*1000000 请求=新的ajaxRequest() open(“GET”,“urlget.php?url=amazon.com/gp/aw”+nocache,true) request.onreadystatechange=函数() { if(this.readyState==4) { 如果(this.status==200) {

代码:

//urlget.html
ajaxget请求示例
将网页加载到DIV
这个句子将被替换
nocache=“&nocache=“+Math.random()*1000000
请求=新的ajaxRequest()
open(“GET”,“urlget.php?url=amazon.com/gp/aw”+nocache,true)
request.onreadystatechange=函数()
{
if(this.readyState==4)
{
如果(this.status==200)
{
如果(this.responseText!=null)
{
document.getElementById('info').innerHTML=this.responseText
}
else警报('AJAX错误:未收到数据')
}
else警报(“AJAX错误:+this.statusText)
}
}
请求发送(空)
函数ajaxRequest()
{
尝试
{
请求=新的ActiveXObject(“Msxml2.XMLHTTP”)
}
渔获物(e2)
{
尝试
{
请求=新的ActivateObject(“Microsoft.XMLHTTP”)
}
渔获物(e3)
{
请求=false
}
}
}
函数ret(请求){返回请求}
ret(请求)
我得到这个错误:

未捕获类型错误:request.open不是函数


request=new ajaxRequest()
不是使用JQuery实例化AJAX请求的方式。因此,
request
不会初始化为XMLHttpRequest对象,因此它没有
open
方法


有关JQuery AJAX,请参见

ajaxRequest
不返回任何内容。你为什么要使用
new
?您是否试图从函数中全局修改
请求
// urlget.html
<!DOCTYPE html>
<html>
<head>
    <title>AJAX GET-request example</title>
</head>
<body style='text-align:center'>
    <h1>Loading Web page into DIV</h1>
    <div id='info'>This sentense will be replaced</div>

    <script>
        nocache = "&nocache=" + Math.random() * 1000000
        request = new ajaxRequest()
        request.open("GET", "urlget.php?url= amazon.com/gp/aw " + nocache, true)

        request.onreadystatechange = function()
        {
            if (this.readyState == 4)
            {
                if (this.status == 200)
                {
                    if (this.responseText != null)
                    {
                        document.getElementById('info').innerHTML = this.responseText
                    }
                    else alert('AJAX error: Data not received')
                }
                else alert("AJAX error: " + this.statusText)
            }
        }
        request.send(null)

        function ajaxRequest()
        {
            try
            {
                request = new ActiveXObject("Msxml2.XMLHTTP")
            }
            catch(e2)
            {
                try
                {
                    request = new ActivateXObject("Microsoft.XMLHTTP")
                }
                catch(e3)
                {
                    request = false
                }
            }
        }
        function ret(request){return request}
        ret(request)
    </script>
</body>
</html>