$ .ajax JQuery进度条

时间:2012-01-31 16:08:28

标签: php javascript jquery

我有一个通过ajax调用执行的SQL查询,但我需要能够检查它的进度并更新进度条。

这是我简单的ajax调用(使用JQuery):

var strResult = (($.ajax({url: URL,async: true}).responseText));

任何想法我如何监听更改以更新栏?

PS。这个问题与SQL无关。

1 个答案:

答案 0 :(得分:-1)

如果您可以将查询分解为可以单独执行的许多组件,您可以不断询问服务器的进度。

例如,如果必须向db中插入大量数据,而不是向db发出一个巨大的请求:

INSERT INTO table VALUES (..), (..), .. ;

你可以把它分成许多插入语句:

INSERT INTO table VALUES (..);
...
INSERT INTO table VALUES (..);

然后,在任何阶段,您始终可以计算可以为您提供百分比的行数。

例如,您知道您要插入20000行。然后使用ajax调用服务器来执行此操作:

SELECT COUNT(*) FROM table

将返回最多20000的数字,您可以计算百分比。

另一种解决方案是使用websockets,但这需要大量的配置。