服务器端包含变量(IIS 7)

时间:2013-07-19 17:44:48

标签: html iis-7

我正在尝试构建一个通用头文件,我可以将其包含在我网站上的每个.html文件中。我的标题包含多个下拉标签,其中一个标签始终突出显示(取决于用户所在的页面)。所以我想做一些像标题的服务器端包含,但我也想给它一个变量,以便它知道要突出显示哪个标签,如下所示:

<div class="topmenu">
<ul>
<someScript>
if (variable=="home") {
   print "<li class='current'>";
} else {
   print "<li>";
}
</someScript>
...

我的服务器是IIS 7,不支持PHP,我不想将我的所有文件重命名为* .asp,以便我可以使用ASP。我怎么能这样做?

1 个答案:

答案 0 :(得分:0)

通过扩展,我猜你会使用经典ASP。那么这样的事情应该有效:

<!--#include file="header.asp"-->

您可以将其放在要包含标题的每个文件中。 当然,你应该首先创建“header.asp”页面;)

对于highligthing您所在页面的标签,有几种方法。 恕我直言,我建议客户端脚本来做到这一点。当然是JS或jQuery。

您可以检查您所在的URL的文件名,并为该选项卡指定正确的类,以便它可以高亮显示。

示例(需要jQuery):

var currentPage = window.location.pathname.substring(url.lastIndexOf('/')+1);
if(currentPage == 'default.asp') $('li.homepage a').addClass('current');

这个简单的代码会重新检索文件名,并通过它将一个类添加到导航中的相应元素。

当然这是一个概念性脚本,您最好将其调整到您的页面。