0

我有一个搜索功能,它需要大约 10 秒来运行数据库。有没有办法在 dojo 中显示搜索状态,以便用户知道搜索实际上正在执行?

澄清

在显示结果的窗口中寻找显示带有百分比的进度条、旋转圆圈或只是简单的搜索...的内容,以便用户知道他们的按钮单击实际上触发了搜索,然后搜索完成并填充窗口时消失。

4

1 回答 1

2

顺便说一句,您需要提供有关您实际想要实现的目标的更多信息。

话虽如此,我猜测您可能想要使用 Standby 小部件来清空页面。

解决方案 1 - 备用小部件

在执行搜索之前,您可以显示备用小部件。

例如:

 <div data-dojo-props="target: dojo.byId("someTargetNode")" data-dojo-type="dojox/widget/Standby" id="standby" ></div>

然后,您可以通过调用 show(); 显示 Standby 小部件,该小部件将使用加载器覆盖您的目标 domNode;显然,当您收到回复时,您也必须手动调用 hide。

dijit.byId("standby").show();

dojox/widget/Standby演示(请耐心等待页面加载。演示是 Dojo 的未构建版本,因此可能需要几秒钟);

解决方案 2 - 烤面包机小部件

您可以使用的第二个解决方案是 Toaster 小部件,它会从页面中弹出以显示您正在加载某些内容。

dojox/widget/Toaster的演示

在我的应用程序中,我使用自定义样式的烤面包机来实现加载。

使用备用小部件的示例

这是待机的快速屏幕截图

在此处输入图像描述

使用烤面包机的示例

这是烤面包机的快速截图

在此处输入图像描述

于 2012-10-29T14:17:13.123 回答