2014-06-12 70 views
1

我有一個簡單的fancybox2實現工作。當我運行該應用程序時,當我將鼠標懸停在它上面時(http://localhost:53481/Add.aspx),鏈接看起來很好,並且當我點擊它時打開fancybox。在fancybox中使用會話變量

<a class="popup" href="Add.aspx" title="Add a Value">New Code</a> 

我想嘗試如下所示,但它不起作用。當我運行該應用程序時,該鏈接的格式不正確(僅顯示爲http://localhost:53481/),並且當我單擊該鏈接時出現的錯誤消息是「請求的內容無法加載,請稍後再試」。

<a class="popup" href="<%# Eval(Session["Type"].ToString(), "Add.aspx?Type={0}") %>" title="Add a Value">New Code</a> 

我正在設置頁面加載的值,並嘗試在會話啓動期間設置沒有成功。

Session["Type"] = "1"; 

本質上我試圖在href中嵌入一個變量,所以我可以將它傳遞到將加載到fancybox的頁面。任何洞察力將不勝感激。

回答

0

嘗試

<a class="popup" href="Add.aspx?Type=<%: Server.URLEncode(Session["Type"]) %>" title="Add a Value">New Code</a> 

<%# Eval..%>應僅用於中繼器或數據表中的數據綁定的值等。使用<%: %>以輸出到頁面的HTML編碼。

+0

僅供參考:雖然您的回答看起來似乎合理,但在標記爲刪除後,它出現在「低質量帖子」隊列中。我懷疑這是因爲這是一個代碼只回答沒有解釋。 –

+0

@OliverMatthews:謝謝,改進的答案。 – SilverlightFox

+0

@SilverlightFox,謝謝你的回覆。 Server.URLEncode沒有工作,但System.Net.WebUtility.UrlEncode做:)我使用VS2013,.NET 4.5.1。謝謝你讓我走向正確的道路。 – 486DX