Here's a (archive.org mirror of a) helpful article on long polling (long-held HTTP request) using jQuery. A code snippet derived from this article: setTimeout(function() { $.ajax({ url: "/server/api/function", type: "GET", success: function(data) { console.log("polling"); }, dataType: "json", complete: poll, timeout: 2000. }) }, 5000);