Javascript 使用XMLHttpRequest';s open()函数
我正在从for循环进行XMLHttpRequest open()调用。该循环通过一组链接进行迭代。我想等到readyState变为4(响应出现)后再进行下一次迭代。如何执行此操作?请帮助而不是使用for循环来控制迭代,设置一个对象: 1) 创建时传递一个“Nextite”回调对象 2) 自行决定 3) 然后在readystate4上 3a)是否自行处理 3b)调用成员“nextite”函数。此对象将是同一对象的另一个实例 这样,for循环只会创建一个对象结构 objA objB objC 。。。每次ajax调用完成后,调用都会连成一个链,并委托给链中的下一个调用。。。直到底部元素引用null为止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 。。。
希望这是有意义的。顺便说一句,我现有的程序是这样的,我想等到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函数?我有点困惑。你能给我一个代码示例吗。