在 asp:repeater 中跳过 line/item
skip a line/item in asp:repeater
是否有可能跳过 asp:repeater
中的项目?我有 <ul>
和 <li>
s,我只需要将 ul 重复一次。因为它有 id
并且 ID 必须是唯一的。
在这里我需要跳过重复 <ul id="lightgallery">
然后继续重复 <li>
标签。
<asp:Repeater ID="rptBlogs" runat="server">
<ItemTemplate>
<div class="blog-post">
<div style="display:none;" id="video<%# Eval("ID") %>">
<video class="lg-video-object lg-html5" controls preload="none">
<source src="<%# !Eval("ArticleTypeValue").ParseString()%>" type="video/mp4">
Your browser does not support HTML5 video.
</video>
</div>
<div class="post-left-img">
<ul id="lightgallery"> //this needs to be skipped
<li class="video" style="position: relative;" data-poster="/<%# Eval("ThumbImage").ParseString() %>" data-sub-html="<%# Eval("Description") %>" data-html="#video<%# Eval("ID") %>" >
<a href="javascript:void(0)">
<img class="img-responsive" src="/<%# Eval("ThumbImage").ParseString() %>" />
<div class="demo-gallery-poster">
<img src="/assets/images/play-button.png">
</div>
</a>
</li>
</ul>
</div>
</ItemTemplate>
</asp:Repeater>
我知道结构应该是什么的常识:
<ul>
<asp:repeater>
...
</asp:repeter>
</ul>
但由于 HTML 结构,无法做到这一点。
已解决,但仍有更好的想法。请参阅下面的解决方案。
我用过:
<ul id="lightgallery<%# Eval("ID") %>">
而不是:
<ul id="lightgallery">
然后使用 jquery 以选择器开头:
$('[id^=lightgallery]')
我认为你的转发器中的转发器可能会让你得到你正在寻找的东西,你可能只需要调整你绑定的数据。
看看这个答案
Repeater in Repeater
如果这不起作用,那么您可以将 OnDataItemBound(类似于 link 中显示的内容)添加到 find/remove 服务器端的控件。
是否有可能跳过 asp:repeater
中的项目?我有 <ul>
和 <li>
s,我只需要将 ul 重复一次。因为它有 id
并且 ID 必须是唯一的。
在这里我需要跳过重复 <ul id="lightgallery">
然后继续重复 <li>
标签。
<asp:Repeater ID="rptBlogs" runat="server">
<ItemTemplate>
<div class="blog-post">
<div style="display:none;" id="video<%# Eval("ID") %>">
<video class="lg-video-object lg-html5" controls preload="none">
<source src="<%# !Eval("ArticleTypeValue").ParseString()%>" type="video/mp4">
Your browser does not support HTML5 video.
</video>
</div>
<div class="post-left-img">
<ul id="lightgallery"> //this needs to be skipped
<li class="video" style="position: relative;" data-poster="/<%# Eval("ThumbImage").ParseString() %>" data-sub-html="<%# Eval("Description") %>" data-html="#video<%# Eval("ID") %>" >
<a href="javascript:void(0)">
<img class="img-responsive" src="/<%# Eval("ThumbImage").ParseString() %>" />
<div class="demo-gallery-poster">
<img src="/assets/images/play-button.png">
</div>
</a>
</li>
</ul>
</div>
</ItemTemplate>
</asp:Repeater>
我知道结构应该是什么的常识:
<ul>
<asp:repeater>
...
</asp:repeter>
</ul>
但由于 HTML 结构,无法做到这一点。
已解决,但仍有更好的想法。请参阅下面的解决方案。
我用过:
<ul id="lightgallery<%# Eval("ID") %>">
而不是:
<ul id="lightgallery">
然后使用 jquery 以选择器开头:
$('[id^=lightgallery]')
我认为你的转发器中的转发器可能会让你得到你正在寻找的东西,你可能只需要调整你绑定的数据。
看看这个答案 Repeater in Repeater
如果这不起作用,那么您可以将 OnDataItemBound(类似于 link 中显示的内容)添加到 find/remove 服务器端的控件。