如何在每5秒后连续调用JS函数

时间:2014-01-29 10:59:41

标签: javascript ajax

我有以下代码:

JSP代码如下:

<html>
<head>
<script src="js/nextprevpage.js" type="text/javascript"></script>
</head>

<body onload="javascript:first();">

<div id="getData">

</div>

</body>
</html>

nextprevpage.js中的代码如下:

function first()
{

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("getData").innerHTML= xmlhttp.responseText;
    }
}
  // here you make a request to your script to check your database...
xmlhttp.open("POST", "updatesession.jsp?", true);
xmlhttp.send();
}

现在我有另一个jsp页面作为updatesession.jsp。

<html>
<head>

</head>

<body ">
 Hello......
</body>
</html>

我使用onload()事件调用了js函数。我需要连续调用这个js函数。有没有办法在5秒后调用此功能。

7 个答案:

答案 0 :(得分:3)

使用window.setInterval函数重复调用函数。

答案 1 :(得分:3)

您可以使用setInterval()

语法:window.setInterval(func, delay);

 function first(){

  ....
   xmlhttp.send();
  window.setInterval(first, 10000);
 }

答案 2 :(得分:1)

您需要使用window.setInterval。 查看http://www.w3schools.com/js/js_timing.asp

window.setInterval("first", 5000);

答案 3 :(得分:0)

使用setinterval函数

w3schools setinterval

答案 4 :(得分:0)

将您的方法放入:

window.setInterval(yourfunction(){},time_in_millis);

Demo

答案 5 :(得分:0)

您可以使用JavaScript时间事件http://www.w3schools.com/js/js_timing.asp 在一段时间后调用js函数。

你可以这样做:

setInterval(function(){alert("Hello")},3000);

答案 6 :(得分:0)

函数first(){

=====    写你的ajax代码   =====

window.setInterval(first,10000);

first()//函数递归逻辑调用
 }

此逻辑将运行每个间隔以调用ajax发送操作