0

这是我很不解的一点,希望我能在这里解释清楚。

我有一个位于 c:/rootFolder/common/js/jsfile.js 中的 js 文件。在这个文件中,我使用了一个 AJAX 函数,该函数调用 rootFolder 中的一个文件,名为 update.aspx,如下所示:

...
...
httprequest.open("GET", "update.aspx", true);
...

我在许多级别的文件夹中有许多文件将调用此函数。如果一个文件 c:/rootFolder/abc/abc.aspx 调用了这个函数,那么上面的 AJAX 将是:

httprequest.open("GET", "../update.aspx", true);

所以我需要一种方法,以便我可以使路径相对更容易从任何 aspx 调用函数。我也在为这个项目使用 cookieless 会话,因此 URL 就像

http://localhost/S(abssadasdadd...

4

1 回答 1

0

经过一段时间的搜索,我开始怀疑应该有一些 html 或服务器可能会作为基础的东西。因此,我通过在页面顶部添加一个基本标签来解决这个问题,特别是在 HEAD 标签中。

<base href="www.abc.com" />

但是,我正在使用将会话 ID 放在 URL 中的无 cookie 会话。我如何将它添加到基础上(否则,它仍然不起作用)?简单回答如下:

string baseurl=  "http://" + servername + "/(S(" + HttpContext.Current.Session.SessionID + "))";

如果你有一个主文件,你可以将基础放在头部:

<base href="<%=baseurl%>" />

如果这些到位,您将轻松调用您的 css 和 js 文件:

<link type="text/css" href="common/css/style.css" rel="stylesheet" />
<script type="text/javascript" src="common/js/jscript.js"></script>
于 2012-09-27T02:23:58.570 回答