I have many web pages that needs to auto-refresh once a minute. Easily done with META REFRESH or a some javascript. (And yes, the whole pages needs to refresh -- LOTS of c
You could load the new content of the page using Ajax. If your page is generated on the server side you can just omit the HTML around the body and only output it's content. You can then receive the new body with Ajax and replace the existing body of the page with body.innerHTML = request.responseText
. In the Ajax callback you can do all kind of error handling you like, even ignore any error and retry the Ajax request.
<html>
<head>
<script type="text/javascript">
function doRequest() {
var request = new XMLHttpRequest();
request.onreadystatechange = function() {
if (request.readyState == 4) {
if (request.status == 200)
body.innerHTML = request.responseText;
doRequest(); // restart the request
}
}
request.open("get", "", true);
request.send(null);
}
</script>
<body onload="doRequest()">
Page content...
</body>
</html>
Google uses the iframe method for gmail. Can't go wrong with google's solution.
You can also Use JQUERY load method.