如何将静态HTML页面嵌入到aspx页面中?
问题描述:
我有一个完整的客户端脚本和CSS(都包含在HTML中)的静态HTML页面。我想知道是否可以将这个HTML页面嵌入到ASPX页面中,并让ASPX页面能够响应从静态html文档中引发的JavaScript事件? asp.net是否为此提供了特定的控件,或者我可以使用框架吗?如何将静态HTML页面嵌入到aspx页面中?
任何帮助将是伟大的。非常感谢!
答
如果ASPX页面和HTML都来自同一个域,我会用IFrame做到这一点。否则,安全限制太多。
然后,你可以做这样的事情window.frames [myframe] .document
其他细节可以在答案中找到了另一个问题here.
答
可能有点破旧,但你应该能够做这样的事
<%@ Page Language="C#" %>
<html>
<body>
<%
Response.WriteFile ("Yourfile.html")
%>
...
...
...
</body>
</html>
如果你的HTML网页已有<html/>
,<body />
等等,你需要将它们删除。
编辑:
另一种选择是使用<asp:Literal />
和代码隐藏做到这一点
this.Literal1.Text = -html-file-contents-
但我更喜欢第一种方法。
答
如果你把静态的HTML在你的ASPX页面,它会只是将其渲染为普通的HTML。不需要控制。然后你可以使用JavaScript来做任何你想要的。
因此,据你所知,我真的必须读取文件的内容到aspx页面?如果有必要,那就是病态。谢谢 – Nick 2011-03-07 02:35:20
@Nick无法嵌入HTML文件。你可以使用IFRAME,但我不认为你的aspx页面和iframe可以交换事件。 'WriteFile()'是AFAIK的最佳选择。 – 2011-03-07 02:38:10