Raphael Schimchowitsch Raphael Schimchowitsch - 1 year ago 49
HTML Question

Div with random values that change with time

I'm trying to create a div in an HTML page and write random value in it, then, I want the div to refresh itself every X seconds so that the number in it change, but the entire page is not reloaded, just the div.

My idea was that :

<body>
<div id="people" onload="rand();"> </div>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

<script>
function autoRefresh_div()
{
$("#people").load("load.html");// a function which will load data from other file after x seconds
}

setInterval('autoRefresh_div()', 0.5); // refresh div after 5 secs

function rand(){
document.getElementById("people").innerHTML = Math.random();
}

</script>
</body>
</html>


But nothing appear in my div. I tried to change "Math.random()" with some text but nothings change.

Can someone explain me why?

Answer Source

You don't need an onload event. Just setInterval() with a function which will set a new value in a div:

function autoRefreshDiv() {
  document.getElementById("people").innerHTML = Math.random();
}
setInterval(autoRefreshDiv, 1000);  // Time is set in milliseconds
<div id="people"></div>

setInterval will run the function every X milliseconds.

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download