asp:hyperLink NavigateURL和双引号字符错误

问题描述 投票:0回答:2

asp:HyperLink的NavigateURL属性的正确语法是什么?

当我使用双引号字符时出错。 (例如:“访问我们社区的访问” - 健康理疗服务)

 <RAD:GridTemplateColumn HeaderText="KPI" DataField="DisplayName" UniqueName="KPIName" GroupByExpression="DisplayName Group By DisplayName">
                    <ItemTemplate>
                        <asp:Label Text='<%# Eval("DisplayName") %>' ID="lblKPI" runat="server" Visible="false" />
                        <asp:HyperLink runat="server" ID="lnkKpi" rel='<%# Eval("DisplayName") %>' Text='<%# Eval("DisplayName") %>' NavigateUrl='<%# Eval("KPIID","~/Authorised/PerformanceManagement/PerformanceManagement.aspx?Kpi={0}") %>' Target="_blank"></asp:HyperLink>
                    </ItemTemplate>
                </RAD:GridTemplateColumn>

结果

enter image description here

如何处理错误?

c# asp.net hyperlink
2个回答
1
投票

使用HtmlEncode作为值

Text='<%# HttpUtility.HtmlEncode(Eval("DisplayName")) %>'

要么

NavigateUrl='<%# "~/Authorised/PerformanceManagement/PerformanceManagement.aspx?Kpi=" + HttpUtility.HtmlEncode(Eval("DisplayName")) %>'

0
投票

您可以通过在代码隐藏文件中创建URL来实现。

Dynamically set a hyperlink control's NavigateUrl property inline

© www.soinside.com 2019 - 2024. All rights reserved.