-6ren">
gpt4 book ai didi

asp.net - 内联如果似乎只在第一次迭代时被调用 asp.net vb

转载 作者:行者123 更新时间:2023-12-01 23:56:17 24 4
gpt4 key购买 nike

我想知道是否有人可以澄清我做错了什么。在这里给你一个完整的情况是asp repeater;

<asp:Repeater ID="gdvCars" runat="server">
<HeaderTemplate><h1>Cars</h1><hr/></HeaderTemplate>

<ItemTemplate>
<%# IIf((Container.ItemIndex)/3 = 0 Or Container.ItemIndex=0, "<div class='row'>", "")%>
<div class="col-md-4">
<div class="thumbnail">
<asp:Image runat="server" ImageUrl= <%#Container.DataItem("Image_path")%> ></asp:Image>
<div class="caption">
<h3><%#Container.DataItem("Make")%> <%#Container.DataItem("Model")%></h3>
<table class="table table-striped">
<tr><th>Make</th><td><%#Container.DataItem("Make")%></td></tr>
<tr><th>Model</th><td><%#Container.DataItem("Model")%></td></tr>
</table>
</div>
</div>
</div>
<%# IIf((Container.ItemIndex)/3 = 0, "</div>", "")%>
</ItemTemplate>
</asp:Repeater>

上面的代码是一个 VB ASP.net 脚本,它试图循环遍历数据库返回的数据源,并在每三次迭代时创建一个新行,但是它唯一匹配的时间是在第一次迭代时。

如果需要,我可以提供更多信息,其余的似乎仅内联 if 语句就可以正常工作;

<%# IIf((Container.ItemIndex)/3 = 0 Or Container.ItemIndex=0, "<div class='row'>", "")%>

<%# IIf((Container.ItemIndex)/3 = 0, "</div>", "")%>

最佳答案

让我们看看:

0/3 = 0
1/3 = 0.33
2/3 = 0.66
3/3 = 1
4/3 = 1.33
5/3 = 1.66
...

所以是的,它只在第一次迭代时返回 0。您是否打算进行模运算 (Container.ItemIndex Mod 3 = 0) 而不是除法 (/)?

关于asp.net - 内联如果似乎只在第一次迭代时被调用 asp.net vb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23522017/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com