0

我正在尝试在我的网站页面中添加一些代码,单击该页面时,会将用户重定向到另一个页面,该页面由一段数据绑定。

这是代码:

<asp:HyperLink ID="HyperLink1" runat="server" 
            NavigateUrl="https://cw.tabinc.com/v4_6_release/services/system_io/Service/fv_sr100_request.rails?service_recid='<%# Eval("SR_Service_RecID") %>'">Original Ticket</asp:HyperLink> 

知道我做错了什么导致无法找到“SR_Service_RecID”吗?

谢谢!

编辑:我的整个“项目模板”代码。

<ItemTemplate>
        <h4 style="font-family: 'Adobe Fan Heiti Std B'; font-size: large; font-weight: 500; font-style: normal; font-variant: normal; color: #000000">
        <asp:Label ID="SummaryLabel1" runat="server" Text='<%# Eval("Summary") %>' /></h4>
        <br />
       <asp:HyperLink ID="OriginalTicket" runat="server" 
            NavigateUrl="https://cw.tabinc.com/v4_6_release/services/system_io/Service/fv_sr100_request.rails?service_recid='<% Eval("SR_Service_RecID") %>'">Original Ticket</asp:HyperLink> 
        <br />
        <
        Problem:<br />
        <asp:Label ID="ProblemLabel" runat="server" Text='<%# Eval("Problem") %>' 
            Font-Bold="False" />
        <br />
        <br />
        Resolution:
        <br />
        <asp:Label ID="ResolutionLabel" runat="server" 
            Text='<%# Eval("Resolution") %>' Font-Bold="False" />
        <br />
        <br />
        <asp:ImageButton ID="ImageButton1" runat="server" ImageUrl="~/cancel_btn.png" 
            PostBackUrl="~/HomePage.aspx" ToolTip="pointer" />
        <br />

    </ItemTemplate>

本质上,“摘要”“问题”和“SR_Service_RecID”都是我数据库中的列。当用户单击他们希望从之前的页面查看的记录(网格视图)时,它们是数据绑定的。

编辑:只需将建议的单引号放入,我现在收到一条错误消息,提示“服务器标签格式不正确。”

编辑:感谢 Karl 和 Garrison Neely,找到了我的问题的答案。

我需要将我的代码更改为:

<asp:HyperLink ID="OriginalTicket" runat="server" 
        NavigateUrl='<%# "https://cw.tabinc.com/v4_6_release/services/system_io/Service/fv_sr100_request.rails?service_recid=" & Eval("SR_Service_RecID") %>'>[OriginalTicket]</asp:HyperLink> 

关闭。谢谢您的帮助。

4

2 回答 2

0

如果 SR_Service_RecID 是一个可在您的代码隐藏中访问的变量,那么您所要做的就是去掉那些引号,所以它是'<%= SR_Service_RecID %>'. 如果这是数据绑定控件的一部分,例如 a GridView,您需要使用Eval,如下所示'<% Eval("SR_Service_RecID") %>'

如果这些选项都不起作用,请使用更多 ASPX 标记编辑您的帖子,并SR_Service_RecID从代码隐藏中添加任何适用的声明。

编辑:现在我看到您正在使用 GridView,请尝试以下方式:使用 删除您TemplateFieldHyperlink,并将其替换为HyperLinkField.

    <asp:HyperlinkField text="Your Text"
     navigateurl="https://cw.tabinc.com/v4_6_release/services/system_io/Service/fv_sr100_request.rails?service_recid={0}" 
DataNavigateUrlFields="SR_Service_RecID" 
headertext="Your Header" />
于 2013-07-09T15:13:43.877 回答
0

在您显示代码的已编辑帖子中,您的通话ItemTemplate中缺少#(磅符号) 。Eval这是您的代码:

<asp:HyperLink ID="OriginalTicket" runat="server" 
        NavigateUrl="https://cw.tabinc.com/v4_6_release/services/system_io/Service/fv_sr100_request.rails?service_recid=<% Eval("SR_Service_RecID") %>'">Original Ticket</asp:HyperLink>

应该是这样的:

<asp:HyperLink ID="OriginalTicket" runat="server" 
        NavigateUrl="https://cw.tabinc.com/v4_6_release/services/system_io/Service/fv_sr100_request.rails?service_recid=<%# Eval("SR_Service_RecID") %>'">Original Ticket</asp:HyperLink>
于 2013-07-09T15:27:40.250 回答