var xmlHttp=null;  //创建的XMLHttpRequest对象,ajax异步传输,不刷新页面
if (window.XMLHttpRequest)
  { // code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else if(window.ActiveXObject)
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
一个页面里面可以创建多个XMLHttpRequest对象吗?如果能创建多个,有用吗?是不是还是一个的效果?向不同的后台传数据都用同一个XMLHttpRequest对象?谢谢解答

解决方案 »

  1.   

    还有个问题就是,可以用XMLHttpRequest对象向后台传了数据,在后台经过判断不需要向前台输出数据,就不向前台输出数据了,可以吗?这样不向前台传输是不是比前台接收null省时间啊?前台: 
    if (xmlhttp.readyState==4 && xmlhttp.status==200)   //表示完全处理完毕
        {
    }
    if里面就什么也不用写了?也不用写var hc=xmlhttp.responseText;了?
      

  2.   

    一个页面上XMLHttpRequest对象可以只创建一次,多次调用Ajax请求。Ajax请求为异步的,前台发送一个请求给后台后继续执行前台业务,后台处理完成后返回标识,如需要前台进行一些响应操作则执行在你的if条件里,这也是异步的一个简单模型。
      

  3.   

    可以创建多个,用于同时进行多个ajax请求
      

  4.   

    不是传输数据的问题。ajax发请求,后台进行响应
    不管响应内容是什么,前台是肯定接收的,你可以在前台取消请求,但那个时候后台还没有响应
    就像你在浏览器访问一个地址一样,和ajax是一个道理
      

  5.   

    后台向前台传null,这个耗费时间多吗,或者占资源多吗?我要在后台经过判断才知道这个信息是不是值得向前台传,我在前台怎么判断什么时候取消请求?(不得等后台出结果后才知道是否可以取消,那不就相当于也得把数据传到前台)
      

  6.   

    请问这样创建多个XMLHttpRequest对象,比只用一个对象快吗?如果只创建一个对象是不是要等到这个对象在前台接受完数据,即进行完:
    if (xmlhttp.readyState==4 && xmlhttp.status==200) //表示完全处理完毕
      {
    var hc=xmlhttp.responseText; 
    }(一次交互完成)
    别的地方才能再次用xmlhttp这个对象啊?如果是建多个XMLHttpRequest对象是不是可以有多个对象同时向不同的后台传递数据,然后接收来自不同后台传输到前台的数据(一个对象对应一个后台)?那这样不是比只创建一个对象快。我是这样理解的,不知道对不?
      

  7.   


    我在做RSS新闻源获取,用XMLHTTP,通过js多次导入打页面只能显示一个url的内容是什么问题呢?我后天没写东西。