使用jQuery在网页上的实时数据

时间:2010-04-11 01:35:23

标签: python django jquery

我希望网页能够在新数据到达时不断更新图表。通常,您拥有的所有数据都会在请求开始时传递到页面。但是,我需要页面能够每隔几秒钟用新信息更新自己以重绘图形。

背景

该网页与此http://www.panic.com/blog/2010/03/the-panic-status-board/类似。进入的数据将由Arduino测量的温度值绘制并保存到Django数据库(此部分已经完成)。

更新

听起来好像解决方案是使用jQuery.ajax()函数(http://api.jquery.com/jQuery.ajax/)和一个函数作为.complete回调,它会在几秒钟之后将另一个请求安排到一个URL以JSON格式返回数据。

如何安排该方法?使用.delay()函数?

2 个答案:

答案 0 :(得分:6)

因此,页面必须执行定期jQuery.ajax调用,并将url参数设置为服务器的URL,其中包含最新的最新数据信息(可能只是最后一个瞬间的增量增量)客户端有信息 - 客户端可以作为Ajax调用中的查询参数发送该瞬间),理想情况下是JSON格式。完成异步请求时的回调可以在将来安排下一个ajax调用几秒钟,然后重新绘制图形。

事实上,服务器端,你正在使用Django,似乎并不是那么重要 - 服务器只需要将一堆数据格式化为JSON并将其发送回去。

答案 1 :(得分:0)

如果数据由即时图形组成,您可以通过Django为它们(以gif,png或任何其他图形格式)提供服务,并单独重新加载或甚至一次性重新加载所有页面。

这取决于负载和性能要求,但您可以开始只是重新加载所有页面,然后,如果需要,使用AJAX重新加载每个特定部分(使用jQuery或{{很容易实现1}}使用更新)。如果您期望大量数据,那么您应该使用JSON增量数据更改为在客户端上生成图形。