Javascript dojo dijit对话框参考底图未显示
我试图在一开始隐藏三个不同的对话框,然后根据ajax表单提交的响应,我希望显示不同的对话框 当表单提交并等待响应时,我可以显示“正在进行”对话框。 然后,如果服务器返回错误响应,我想隐藏第一个对话框,然后根据错误响应类型显示另一个对话框 除了隐藏第一个对话框并显示下一个对话框时,参考底图消失之外,我几乎可以实现我想要做的事情。 如果在浏览器窗口内滚动,则参考底图将正确显示。 我在做一些简单的事情,比如:Javascript dojo dijit对话框参考底图未显示,javascript,dojo,Javascript,Dojo,我试图在一开始隐藏三个不同的对话框,然后根据ajax表单提交的响应,我希望显示不同的对话框 当表单提交并等待响应时,我可以显示“正在进行”对话框。 然后,如果服务器返回错误响应,我想隐藏第一个对话框,然后根据错误响应类型显示另一个对话框 除了隐藏第一个对话框并显示下一个对话框时,参考底图消失之外,我几乎可以实现我想要做的事情。 如果在浏览器窗口内滚动,则参考底图将正确显示。 我在做一些简单的事情,比如: dijit.byId("progress_dialog").hide(); dijit.by
dijit.byId("progress_dialog").hide();
dijit.byId("error_dialog").show();
有人有什么建议吗
我在dojo网站上看到了以下页面,但它似乎是Dojo0.9的临时解决方案?
任何帮助都将不胜感激
谢谢
[编辑]
好的,我已经“解决”了这个问题,添加了一点延迟,如下所示
dijit.byId("progress_dialog").hide();
setTimeout(function() {
dijit.byId("error_dialog").show();
}, 500);
这对我来说很有效,但我认为可能有更好的解决方法。
有人要吗
[再次编辑]
我正在使用的版本是dojo-1.3.2,dojo 1.3中对话框的参考底图出现了很多问题,因为所有对话框对象都开始使用一个公共参考底图对象(而不是创建自己的参考底图)。
我怀疑您案例中的参考底图是在隐藏之前显示的-如果您愿意,可以进行调试;)
作为一种解决方法,超时是可以的(我想可以少一些)。或者您可以尝试连接到
hide
方法(但不确定这是否有帮助):
但是,考虑到1.3中的所有底层问题,我会考虑使用Dojo 1.4,因为DIJIT对话框的一些补丁已经被提交:
< P>在Dojo 1.3中出现了许多对话框的底层问题,因为所有的对话对象都开始使用1个普通的底层对象(而不是创建自己的底层)。 我怀疑您案例中的参考底图是在隐藏之前显示的-如果您愿意,可以进行调试;)作为一种解决方法,超时是可以的(我想可以少一些)。或者您可以尝试连接到
hide
方法(但不确定这是否有帮助):
但是,考虑到1.3中的所有底层问题,我会考虑使用Dojo 1.4,因为DIJIT对话框的一些补丁已经被提交:你使用了什么版本的Dojo?Dojo1.3在对话框参考底图的实现上有了显著的变化。我应该在我的问题中指出这一点。我使用的版本是1.3.2。您使用的是什么版本的dojo?Dojo1.3在对话框参考底图的实现上有了显著的变化。我应该在我的问题中指出这一点。我使用的版本是1.3.2。
dojo.connect(dijit.byId("progress_dialog"), "hide", dijit.byId("error_dialog"), "show");
dijit.byId("progress_dialog").hide();