在家里我有不同的项目和库,我已经用Sandcastle创建了一个帮助文件。 现在,Sandcastle也提供了创建网站的可能性。
我想要做的是创建一个aspx页面,我可以动态创建一个菜单,并且可以解析现有的helpfile网站。所有在一个地方。
有可能做到这一点吗?也许我可以使用一些控制来查看整个网页?
谢谢。
修改
似乎无论出于何种原因我无法在ASP页面中使用它,但可能是因为Sandcastle创建帮助页面的方式。 我现在尝试使用带有webbrowser控件的WinForm应用程序,这种方法有效,所以我想这将是我必须去的地方。
但我需要感谢Alison(和Leon)对这个问题的帮助。 他们的解决方案适用于“普通”html页面,但(不幸的是)不适用于我所拥有的。 出于这个原因,我已经接受了答案,以便其他人可以从中受益。
答案 0 :(得分:2)
<强>更新强>
看看jQuery load。您可以在页面上使用div并将外部页面中的html加载到其中。加载函数可以从不同的页面中获取单个HTML片段。
在您的主页上,添加此html:
<div id="myexternalpage"></div>
在其他页面上,添加一个div标签,其ID围绕您想要抓取的内容:
<div id="myexternalcontent">Test</div>
将以下内容添加到您的头标记中:
<script type="text/javascript">
$(document).ready(function() {
$('#myexternalpage').load('myexternalpage.html #content');
})
</script>
注意在加载函数的末尾添加了“@content”选择器?这将使jQuery加载不同的页面并仅返回div中具有id =“content”的内容。
使用jQuery加载将允许您在页面加载后加载内容,而您不需要使用任何iFrame。您可以使用CSS来处理高度/宽度并处理任何溢出。
答案 1 :(得分:0)
我做了一个快速而肮脏的测试页面:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Test2.aspx.cs" Inherits="Test2" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js " ></script>
<script type="text/javascript">
$(document).ready(function () { $('#myexternalpage').load('WebHelp/KoenHoefman/ExhangeRateWebService/Index.html'); })
</script>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div id="myexternalpage">
</div>
</form>
</body>
</html>
但我在脚本行上收到错误。
Microsoft JScript runtime error: Object expected
我是否必须用某些内容替换document
(可能是一个愚蠢的问题,但我不习惯使用javascript)?
<强>更新强> 添加了Leon的代码,现在它显示了一些东西。但是,当我想使用我真正想要显示的页面(位于子文件夹中)时,我只获得index.html上的项目。应该加载到该页面的IFrame中的页面未显示。此外,未显示位于同一文件夹中的图片。
错误:HTTP 404
请求的网址: /html/aea04102-3d0d-cf0d-f5f4-5634f5f06aed.htm