我有一个asp.net页面,其中有两个网格视图可用于显示当前的股票市场价格更新.我需要每20秒更新这两个网格视图.所以我在考虑使用JQuery来完成这项工作.
我需要的是一个定时器,它将每20秒触发一次,向服务器发送ajax请求,使用json从服务器带来订单列表,然后更新这两个网格视图.如果在服务器被激活后20秒仍然提供服务请求,那么我希望中止旧服务器而不会造成任何麻烦.
我已经知道如何使用json引入对象.我只需要弄清楚如何每20秒发送一个请求,如果它仍然是服务器20秒,则取消请求.
解决方法
使用javascript的setInterval()以一定间隔运行一些代码.
jQuery的$.ajax()将返回您可以中止的XMLHTTPRequest对象.
var request; // Stores XMLHTTPRequest object setInterval(function() { // if there's a current request,abort if(request) request.abort(); // make ajax request,and assign request to variable request = $.ajax({ // My ajax request parameters }); },20000); // repeat every 20 seconds (20,000 milliseconds)
http://api.jquery.com/jQuery.ajax/
编辑:
如果您需要停止运行间隔,则需要将间隔分配给变量,然后随时清除它.
var theInterval = setInterval(function() {...},20000); theInterval.clear(); // To stop the interval from running