在 foreach 循环中动态显示按钮

本文关键字:动态显示 按钮 循环 foreach | 更新日期: 2023-09-27 18:30:54

我的foreach循环中有两个按钮。 我需要同时出现两者,除非它是循环中的第一项或循环中的最后一项。

@foreach (var item in @Model.IPACS_Processes.IPACS_Procedures)
{
    <li class="span6">
        <img src="../../Images/thumbs/doc.png" alt="" class="pull-left" />
        <div class="comment-info">
            <h4>
                <a href="@Url.Action("ViewProcedure", new { id = item.procedureID })" data-original-title="@item.name">
                    @item.name</a></h4>
            <h5>
                <small>Owner: </small> <a href="javascript:void(0);">@item.owner</a></h5>
                <br />
            <p>
            @item.description
            </p>
            <br />
            <p>
                <a href="" class="btn btn-small"><span class="iconfa-double-angle-up icon-white">
                </span>Move Up</a>
                <a href="" class="btn btn-small"><span class="iconfa-double-angle-down"></span>
                    Move Down</a>
            </p>
        </div>
    </li>
    <br style="clear: both;" />
}
我需要可见的"上移"按钮,除非它是循环中的第一项,

然后我需要可见的"下移"按钮,除非它是循环中的最后一项。

不确定设置计数迭代器是我唯一的选择,还是有更清洁的方法?

在 foreach 循环中动态显示按钮

您可以简单地设置一个索引并将其与数组的上限和下限进行比较,或使用数组的 Count 属性。

像这样的东西。

@{
  int i = 0;
  foreach (var item in Model.IPACS_Processes.IPACS_Procedures)
  {
    <!-- stuff and stuff --!>
    if(i > 0) {
            <a href="" class="btn btn-small"><span class="iconfa-double-angle-up icon-    white">
            </span>Move Up</a>
    }
    if(i < Model.IPACS_Processes.IPACS_Procedures.Count)
    {
            <a href="" class="btn btn-small"><span class="iconfa-double-angle-down">     </span>
                Move Down</a>
    }
    i++;
  }
}