【问题标题】:Can I write HTML code to Window.showModalDialog()?我可以将 HTML 代码写入 Window.showModalDialog() 吗?
【发布时间】:2010-09-04 21:32:28
【问题描述】:

我用:

Window.showModalDialog(...)

打开一个对话窗口,

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

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

我可以吗?

【问题讨论】:

    标签: javascript html


    【解决方案1】:

    有趣的问题!

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

    我考虑过使用data: URI,您可以将其用作showModalDialog 的第一个参数,而不是普通的URL:

     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 中无效。你只会得到一个空白窗口。

    【讨论】:

      【解决方案2】:

      好问题和答案。 (+1)

      我只是想补充一点,如果您确实需要在模态对话框中输入 HTML,您可能需要考虑使用 Javascript 库来完成它。我已经多次在 HTML 中使用过 Dojo 的“dijit.Dialog”,包括图像、表单控件等...您可以随意设置它的样式,而且它可以很好地跨浏览器使用。

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

      干杯。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-11-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-11-29
        相关资源
        最近更新 更多