如何调用ajax函数直到已经运行ajax而不给出响应?

时间:2015-10-28 07:01:07

标签: javascript php jquery ajax

我想调用我的ajax函数,直到已经运行ajax而不给出响应

页面加载每秒和每秒ajax函数调用但我想调用ajax直到已经运行ajax函数没有响应。

我可以存储ajax函数刷新率,以便在此之后加载我的函数吗?

任何解决方案?请帮帮我。

下面是我正在使用的代码。

function realtime_content()     {

var xmlhttp=false;
if (!xmlhttp && typeof XMLHttpRequest!='undefined')
    {
    xmlhttp = new XMLHttpRequest();
    }
if (xmlhttp) 
    {
    RTupdate_query = "RTajax=1&DB=" + DB + "" + groupQS + usergroupQS + "&adastats=" + adastats + "&SIPmonitorLINK=" + SIPmonitorLINK + "&IAXmonitorLINK=" + IAXmonitorLINK + "&usergroup=" + usergroup + "";

    xmlhttp.open('POST', 'demophp'); 
    xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
    xmlhttp.send(RTupdate_query); 
    xmlhttp.onreadystatechange = function() 
        { 
        if (xmlhttp.readyState == 4 && xmlhttp.status == 200) 
            {
            document.getElementById("realtime_content").innerHTML = xmlhttp.responseText;
            }
        }
    delete xmlhttp;
    }
}

这是页面加载功能

function refresh_display()
{
if ($start_count < 1)
    {
    realtime_content();
    }
$start_count++;
if (ar_seconds > 0)
    {
    document.getElementById("refresh_countdown").innerHTML = "" + ar_seconds + "";
    ar_seconds = (ar_seconds - 1);
    setTimeout("refresh_display()",1000);
    }
else
    {
    document.getElementById("refresh_countdown").innerHTML = "0"
    realtime_content();
    setTimeout("refresh_display()",1000);
    }
}

我添加了一张图片在此图片页面AST_timeonVDADall_final.php在页面加载时多次调用并进入待定时间。

所以我想解决这个待处理的时间,如果页面处于暂挂状态,则没有请求转到此页面AST_timeonVDADall_final.php。

当挂起解决时,此页面AST_timeonVDADall_final.php再次调用。

enter image description here

1 个答案:

答案 0 :(得分:0)

使用jQuery $.when()Document Link

  

描述:提供一种基于one执行回调函数的方法   或更多对象,通常是表示异步的延迟对象   事件

多个ajax调用的示例

$.when( $.ajax( "/page1.php" ), $.ajax( "/page2.php" ) ).done(function( a1, a2 ) {
  // a1 and a2 are arguments resolved for the page1 and page2 ajax requests, respectively.
  // Each argument is an array with the following structure: [ data, statusText, jqXHR ]
  var data = a1[ 0 ] + a2[ 0 ]; // a1[ 0 ] = "Whip", a2[ 0 ] = " It"
  if ( /Whip It/.test( data ) ) {
    alert( "We got what we came for!" );
  }
});