OfficeJs displayDialogAsync-检查是否有打开的对话框窗口



我有一个excel插件。我从我的插件中放置了两个内容窗格,我想从中打开一个对话框

一个excel在同一时间只允许一个对话框。

当我在向服务器发出ajax请求之前打开对话框窗口时,但如果我不能打开对话框窗口,那么我就不需要ajax调用。

我试图将信息保存到localStorage,但如果excel是hurm并重新加载它自己,localStorage将显示对话框打开,这是错误的信息。

如何检查是否有打开的对话框窗口?

提前感谢您的回答。

如果已经打开了一个对话框,displayDialogAsyc方法将返回错误12007。如果返回12007,您可以对此进行测试并进行代码分支。有关一些详细信息,请参阅displayDialogAsync中的错误。

我找到了一个解决方案,但我认为它不是最好的。

首先,我尝试打开一个不受信任的网站网址对话框。

如果我得到12004错误,这意味着我可以打开一个对话框窗口。

如果我得到12007错误,这意味着我不能打开对话框窗口,因为我已经从这个主机窗口打开了一个对话框。

12007检查似乎比12004检查运行得更早。

最新更新