【问题标题】:Navigate URL for Hyperlink is changeed, when the Title set to hyperlink has "/" inbetween?超链接的导航 URL 已更改,当标题设置为超链接时,中间有“/”?
【发布时间】:2013-07-15 11:08:29
【问题描述】:

我在 datalist 中使用超链接,并且 datalist 与数据表绑定

    Hyperlink inside my datalist :

<asp:HyperLink ID="hypSubSections" runat="server" NavigateUrl='<%# DataBinder.Eval(Container.DataItem,"Pagename") + "?ID=" + DataBinder.Eval(Container.DataItem,"ID") + "&Code=" + DataBinder.Eval(Container.DataItem,"CODE") + "&Title=" + DataBinder.Eval(Container.DataItem,"Title") %>' Text='<%# DataBinder.Eval(Container.DataItem,"Title") %>'></asp:HyperLink>

在页面加载时,所有超链接都设置了正确的导航 url,当设置为超链接的标题为“标准/准入”的情况下,现在我单击该超链接,设置为超链接的页面名称值以某种方式更改为那里的所有其他超链接..

仅当文本之间有斜线时才会出现问题。如何处理?我觉得很奇怪。

【问题讨论】:

    标签: asp.net .net hyperlink


    【解决方案1】:

    试试这个

    Text='<%# Server.HtmlEncode(DataBinder.Eval(Container.DataItem,"Title")) %>'
    

    更新:

    不按属性设置文本怎么样?

    <asp:HyperLink ID="hypSubSections" runat="server"><%# Server.HtmlEncode(DataBinder.Eval(Container.DataItem,"Title")) %></asp:HyperLink>
    

    【讨论】:

    • 我得到这个错误:字符 '%' (0x25) is not allowed at the beginning of an XML name
    • 也有同样的问题,页面名称被斜杠后面的文字代替(录取)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-01
    • 1970-01-01
    • 2013-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多