Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用XMLHttpRequest';s open()函数_Javascript_Ajax_Xmlhttprequest - Fatal编程技术网

Javascript 使用XMLHttpRequest';s open()函数

Javascript 使用XMLHttpRequest';s open()函数,javascript,ajax,xmlhttprequest,Javascript,Ajax,Xmlhttprequest,我正在从for循环进行XMLHttpRequest open()调用。该循环通过一组链接进行迭代。我想等到readyState变为4(响应出现)后再进行下一次迭代。如何执行此操作?请帮助而不是使用for循环来控制迭代,设置一个对象: 1) 创建时传递一个“Nextite”回调对象 2) 自行决定 3) 然后在readystate4上 3a)是否自行处理 3b)调用成员“nextite”函数。此对象将是同一对象的另一个实例 这样,for循环只会创建一个对象结构 objA objB objC 。。。

我正在从for循环进行XMLHttpRequest open()调用。该循环通过一组链接进行迭代。我想等到readyState变为4(响应出现)后再进行下一次迭代。如何执行此操作?请帮助而不是使用for循环来控制迭代,设置一个对象:

1) 创建时传递一个“Nextite”回调对象

2) 自行决定

3) 然后在readystate4上

3a)是否自行处理

3b)调用成员“nextite”函数。此对象将是同一对象的另一个实例

这样,for循环只会创建一个对象结构

objA objB objC

。。。每次ajax调用完成后,调用都会连成一个链,并委托给链中的下一个调用。。。直到底部元素引用null为止


希望这是有意义的。

顺便说一句,我现有的程序是这样的,我想等到readyState变为4,然后再进行下一次迭代

onMenuItemCommand: function() {
  var i;//iteration value of the loop

  var xhr=new XMLHttpRequest();//create the XMLHttp request
  var e=content.document.getElementsByTagName('a');// get all the links in the content page

  for( i=0;i<e.length;i++){ // loop goes through the selected links
    webassist.setLink(e[i]);      //set the link element

    if(e[i]!=""){  // check the link's href value is null

      xhr.open('HEAD',e[i] ,true);
      xhr.send(null);

    }
    else{ //if the href value is null set it to color red
      webassist.setColor("#FF0000");//red
    }

    xhr.onreadystatechange=function(evnt){
      if(xhr.readyState==4){
        if(xhr.status==200){
          webassist.setColor("#99FF66");//green
        }
        else{
          webassist.setColor("#FF0000");//red
        }
      }
      else{
        webassist.setColor("#FF00FF"); //pink
      }
    }
  }  
}
onMenuItemCommand:function(){
var i;//循环的迭代值
var xhr=new XMLHttpRequest();//创建XMLHttp请求
var e=content.document.getElementsByTagName('a');//获取内容页中的所有链接

对于(i=0;我有没有考虑过使用jQuery的AJAX函数?我有点困惑。你能给我一个代码示例吗。