【问题标题】:Using Session variables in fancybox在 fancybox 中使用 Session 变量
【发布时间】:2014-06-12 20:53:03
【问题描述】:

我有一个可以运行的 fancybox2 的简单实现。当我运行该应用程序时,当我将鼠标悬停在它上面时链接看起来很好 (http://localhost:53481/Add.aspx),并在我点击它时打开了幻想框。

<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 中加载的页面。任何见解将不胜感激。

【问题讨论】:

    标签: c# asp.net fancybox fancybox-2


    【解决方案1】:

    试试

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

    &lt;%# Eval..%&gt; 只能用于Repeater 或DataTable 等中的数据绑定值。使用&lt;%: %&gt; 以HTML 编码输出到页面。

    【讨论】:

    • 仅供参考:虽然您的回答看似合理,但在被标记为删除后,它已出现在“低质量帖子”队列中。我怀疑这是因为它只是一个没有解释的代码答案。
    • @OliverMatthews:谢谢,改进了答案。
    • @SilverlightFox,感谢您的回复。 Server.URLEncode 不起作用,但 System.Net.WebUtility.UrlEncode 起作用了 :) 我使用的是 VS2013,.NET 4.5.1。感谢您带领我走上正确的道路。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-02
    • 1970-01-01
    相关资源
    最近更新 更多