定期远程更新每个extjs网格行

时间:2015-05-27 07:52:11

标签: javascript ajax loops extjs extjs3

该任务的目标是从后端更新每一行内容。这意味着对PHP的ajax请求。

表最初加载了basevalues,需要定期加载到每一行的新的更新数据。

创建一个每分钟运行一次的ExtJs任务,store.each将遍历所有记录,获取参数id和ajax成功,记录将被更新并提交。 然而,这种方法带有一个缺陷 - 如果有多行,发送50或100个即时请求将最终导致大多数时间。

同时获取所有数据并刷新整个网格不是一个选项 - 计算每个行的所有数据将超过请求时间限制(~30s),因此需要单独请求每个 - 但不是同时。

有没有什么好方法可以在分机中实现这一目标?

更新:

我设法使用setTimeout作为store.each循环中ajax查询的延迟。每5次迭代,延迟将增加 - 因此,当Ext任务完成并且所有结果循环结束时,它们每5秒以5个批次执行 - 并且在任务再次运行时再次启动。

1 个答案:

答案 0 :(得分:0)

最好将请求发送到服务器,只获取项目的变更集,并用更改的项目替换旧项目。

如果您不想重新加载整个商店,唯一的变体是逐个发送请求,或者将它们打包在包中并逐包刷新它们。