2013-01-12 50 views
2

可能重複:
Inline tag not executing in an asp.net master page母版頁中使用ASP.NET內聯表達式

我在我的母版頁以下行:

<script type="text/javascript" src="/Scripts/TimeClock/Themes/<%= ThemeName %>/jquery-ui-1.9.2.custom.min.js"></script> 

<link href="/Styles/Themes/<%= ThemeName %>/jquery-ui-1.9.2.custom.css" rel="stylesheet" type="text/css" /> 

一切編譯很好,但是當我運行我的web應用程序時,我的css文件無法加載。究其原因是因爲當我所呈現的頁面上查看源代碼,這是看到了什麼:

<script type="text/javascript" src="/Scripts/TimeClock/Themes/Smoothness/jquery-ui-1.9.2.custom.min.js"></script> 

<link href="/Styles/Themes/&lt;%= ThemeName %>/jquery-ui-1.9.2.custom.css" rel="stylesheet" type="text/css" /> 

所以它出現在我的ASP.NET服務器標籤工作的腳本行,但不是CSS線。有誰知道我做錯了什麼,以及如何解決這個問題?

+0

順便說一句,這些都不是服務器標籤 - 這些標籤'是標準的HTML。您似乎指的是使用'<%= var %>' –

+0

@JohnSaunders - 我指的是<%= %>標記。我的術語錯了嗎?那些不叫服務器標籤? – Icemanind

+0

好的,請參閱[.NET Framework中的ASP.NET內聯表達式簡介](http://support.microsoft.com/kb/976112)。 –

回答

0

當您將它放在標題中並且標題包含在服務器上運行時,那麼您不能在標題過濾器的out pass中使用此標題,這也會更改出現問題的部分。

要通過傳遞使用文字控制和完全呈現它後面的代碼,例如,如:

<asp:Literal runat="server" id="txtScriptOnheader" EnableViewState="false" /> 

,並在後面的代碼:

txtScriptOnheader.Text = "<link href=\"/Styles/Themes/\"" + ThemeName + "/jquery-ui-1.9.2.custom.css\" rel="stylesheet\" type=\"text/css\" />";