【问题标题】:How to pass argument in hyperLink navigateUrl inside a repeater如何在转发器内的超链接 navigateUrl 中传递参数
【发布时间】:2017-06-28 10:56:05
【问题描述】:

我正在开发一个视频门户应用程序,我使用 html 模板进行设计。我已经使用asp:Repeater 控制显示所有视频图像。单击特定图像时,页面将重定向到视频详细信息页面。 这是我的html代码,

<asp:Repeater ID="rp_videos" runat="server">
    <ItemTemplate>
        <div class="col-md-4 col-sm-6 small-grid">
            <div class="vid-img-holder wow pulse" data-wow-duration="1s">
                <div class="top-shadow">
                    <span>'<%# Eval("time_before") %>'</span>
                    <span>From <a href="https://www.youtube.com/"><i class="fa fa-youtube-play"></i></a></span>
                    <span><i class="fa fa-eye"></i>'<%# Eval("views") %>'</span>
                </div>
                <asp:HyperLink ID="hl_video_img" runat="server" NavigateUrl="~/Views/VideoDetail.aspx">
                    <asp:HiddenField ID="hf_file" runat="server" Value="'<%# Eval("file") %>'" />
                    <asp:Image ID="img_video_image" runat="server" class="img-responsive hidden-sm hidden-xs" ImageUrl='<%# Eval("image") %>' AlternateText="video_thumb" />
                    <img class="img-responsive hidden-md hidden-lg" src="../images/main-vid-image-smmd-1.jpg" alt="video_thumb" />
                    <span class="play-icon">
                        <img class="img-responsive play-svg svg" src="../images/play-button.svg" alt="play" onerror="this.src='images/play-button.png'" />
                    </span>
                </asp:HyperLink>
                <h3 class="vid-author">
                    <span>By <a href="~/Views/Profile.aspx" title="Posts by admin" rel="author">'<%# Eval("publisher_name") %>'</a>
                    </span>
                     <a href="video-detail.html">'<%# Eval("title") %>'</a>
                </h3>
                <div class="bottom-shadow"></div>
                <div class="overlay-div"></div>
            </div>
        </div>
    </ItemTemplate>
</asp:Repeater>

我想传递被点击的视频的详细信息,这里是所有视频页面的视图。

【问题讨论】:

  • 你已经完成了所有这些,你不知道如何再传递一个参数?
  • 是的,我已经获取并显示了所有视频,现在我希望当点击播放特定视频时,它应该被重定向到我想播放该视频的新页面

标签: c# html asp.net hyperlink repeater


【解决方案1】:

在您的超链接中添加导航 URL 中的代码(您必须使用单引号

<asp:HyperLink ID="hl_video_img" runat="server" NavigateUrl='~/Views/VideoDetail.aspx?videoid=<%# DataBinder.Eval(Container.DataItem,"video_id")%>'>

因此,您生成了正确的链接并传递了要打开的视频的 ID。

现在在您的 VideoDetail.aspx 中添加代码以从 page_load 函数中的查询字符串中获取参数

  if (Request.QueryString.HasKeys())
  {
    try 
    {
       //get the id from query string
       string videoID = Request.QueryString["videoID"].ToString();
    }
    catch {  }
 }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-02-17
    • 1970-01-01
    • 1970-01-01
    • 2015-07-30
    • 2016-09-15
    • 2020-10-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多