【问题标题】:Url for repeater control中继器控制的 URL
【发布时间】:2012-12-21 22:28:06
【问题描述】:

我在转发器控件中有一个链接,我正在链接到另一个启用了分页的转发器控件。该链接在某种程度上有效,只是它链接到的第 1 页比我想要的要大。我知道这是因为我的分页转发器的第一页没有与之关联的页码,即第一页有url default2.aspx,转发器的第二页则为default2.aspx?Page=1 .我希望这是有道理的。在第一个中继器的链接上,我有以下代码:

<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("ID", "default2.aspx?Page={0}")%>'>Review</asp:HyperLink>

如果它正在搜索的内容在此页面上,是否有任何方法可以获取此链接以选择 default2.aspx 页面?或者有没有办法让第一页(default2.aspx)的url为default2.aspx?Page=1?

【问题讨论】:

    标签: asp.net vb.net repeater


    【解决方案1】:

    试试这个

    NavigateUrl='<%# Eval("ID").ToString() == "1" ? "default2.aspx" : String.Format("default2.aspx?Page={0}", Eval("ID"))%>'
    

    【讨论】:

    • 感谢codingbiz。我将它转换为 vb.net 代码并且它工作了
    【解决方案2】:

    通过将以下内容添加到 NavigateUrl 部分,我能够使链接正常工作。

    NavigateUrl='<%# If(Eval("MReviewID").ToString().Equals("1"), "Default2.aspx", String.Format("Default2.aspx?Page={0}", getInt(Eval("MReviewID"))))%>'
    

    为了让第二个页面链接到正确的页面,我必须在我的 VB 代码中创建以下函数:

    Function getInt(ByVal MReviewID As String) As Integer
        Dim rID As String
        rID = MReviewID
        Dim ID As Integer
        ID = Convert.ToInt32(rID)
        ID = ID - 1
    
        Return ID
    End Function
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-02-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-27
      相关资源
      最近更新 更多