2011-01-11 60 views
2

我有一個網頁,我希望呈現以下HTML(小JS模板) -逃離內嵌代碼塊

<script type="text/html" id="lightbox-template"> 
<div id="lightbox-background"></div> 
<div id="lightbox"><%= content %><div class="bottom"></div></div> 
</script> 

然而,Asp.NET預處理器撿的「<%=」標籤並試圖解釋它。我希望轉義這個標籤以允許它被渲染,最好是從模板而不是背後的代碼。這可能嗎?

我已經設法通過一個Literal控件來做到這一點,並在後面的代碼中設置它的文本。

回答

1

我非常想繼續保持在aspx頁面中。這是我能找到最佳的解決方案(from here),它創建分割閉合>到一個單獨的串

<script type="text/html" id="lightbox-template"> 
<div id="lightbox-background"></div> 
<div id="lightbox"><%= "<%= content %" + ">" %=><div class="bottom"></div></div> 
</script> 

重要位:<%= 「<%=含量%」 + 「>」(%)=>

+0

雖然這太可怕了!我認爲最好更改JS模板工具的設置,以使用其他標記。 – UpTheCreek 2012-03-21 10:17:00

-1

此進入ASPX

<div> <%= GetContentString() %> </div> 

此進入aspx.cs

protected String GetContentString() 
    { 
     return "this is a content"; 
    } 
+0

謝謝,但理想情況下,我想保持它在aspx頁面。我也可以使用文字控件將它放入aspx.cs頁面。 – Spongeboy 2011-01-20 05:19:57