$ .post无效。替代方式请帮助吗?

时间:2013-08-10 05:05:17

标签: javascript jquery ajax xmlhttprequest

我使用$ .post在我的网页上发送和接收回复。但它无法在Internet Explorer中运行。我使用其他方式的Ajax。我必须创建xmlhttprequest对象。

我的代码是

     var xmlhttp;
     if (window.XMLHttpRequest)
       {// code for IE7+, Firefox, Chrome, Opera, Safari
       xmlhttp=new XMLHttpRequest();
       }
     else
       {// code for IE6, IE5
         xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
          }
          xmlhttp.onreadystatechange=function()
         {
      if (xmlhttp.readyState==4 && xmlhttp.status==200)
       {
       document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
        }
      }
     xmlhttp.open("POST","demo_post2.asp",true);
    xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
      xmlhttp.send("fname=Henry&lname=Ford");

除了ie-10之外,这适用于所有浏览器。我编写如下代码来支持ie-10。

   if (window.XMLHttpRequest)
      {// code for IE7+, Firefox, Chrome, Opera, Safari
        xmlhttp=new ActiveXObject("Msxml2.XMLHTTP.6.0");
      }

它与mozila,safari无法合作,但与ie-10合作。我没有用ie-7检查过。这是一场冲突。请给我任何帮助...........

1 个答案:

答案 0 :(得分:0)

尝试使用第一种方法并封装您的发送功能,如下所示

setTimeout(function () {
xmlhttp.send();
}, 0);