我可以将HTML代码写入Window.showModalDialog()吗?

时间:2010-09-03 12:11:12

标签: javascript html

我用:

Window.showModalDialog(...)

打开一个对话窗口,

我想在此窗口中显示一些HTML代码,但我没有文件。 (不能使用URL访问)

喜欢秀“你好世界!”在这个对话窗口中。

我可以这样做吗?

2 个答案:

答案 0 :(得分:3)

有趣的问题!

我不是模态对话框的专家,但我认为你不能,因为它是模态对话框的本质,可以阻止任何进一步的代码被执行,直到窗口再次关闭。

我考虑使用data: URI作为showModalDialog的第一个参数,而不是普通的网址:

 window.showModalDialog("data:text/plain;base64,SGVsbG8sIFdvcmxkIQ%3D%3D" ....);

但根据MSDN page on data: URIs,Internet Explorer不支持。 (参见链接页面上的“备注”部分)

它可能适用于Firefox,More on data URIs at Mozilla Developer Central

  

更新:它适用于Firefox:JSFiddle,但正如预期的那样,不适用于IE。那里只有一个空白窗口。

答案 1 :(得分:0)

好问答。 (1)

我只是想补充一点,如果你需要在模式对话框中输入HTML,你可能需要考虑使用Javascript库来完成它。我已经多次使用Dojo的“dijit.Dialog”HTML,包括图像,表单控件等......你可以根据自己的喜好设计它,并且它可以跨浏览器工作。

您可以在DojoCampus查看dijit.Dialog使用的一些示例。

干杯。