jquery - 将 foreach 与 Bootstrap 的网格一起使用以列出元素

标签 jquery css twitter-bootstrap asp.net-mvc-5

我使用 foreach 列出产品列表以使用此代码模拟商店的目录

@foreach (var item in Model){
       <div class="col-md-4">    
            <div class="wp-block product">
                 <figure>
                        @*<img alt="" src="~/Images/20852816-6959-f6580ba5 (1).jpg" class="img-responsive img-center">*@
                                            <img src="data:image/png;base64,@Convert.ToBase64String(item.Imagen, 0, item.Imagen.Length)" class="img-responsive img-center" />
                  </figure>
                  <h2 class="product-title"><a href="">@Html.DisplayFor(modelItem => item.Description)</a></h2>
                   <p>
                      Descripcion del producto
                  </p>
                  <div class="wp-block-footer">
                       <span class="price pull-left">@Html.DisplayFor(modelItem => item.Precio)</span>
                 <a href="#" class="btn btn-sm btn-base btn-icon btn-cart pull-right">
                       <span>Add to cart</span>
                  </a>
          </div>
     </div>    
</div>
}

但是我只有 3 列和 3 个元素,不管我有多少元素,如果我有 6 个元素,我需要 2 行中的 3 列,但我不确定我必须修改什么元素CSS 或 jQuery。

最佳答案

请为您的输出尝试这个。这将为每 3 个元素构建一个新行。

@{
    var itemCount = 0;
}

@{
    foreach (var item in Model.Reverse().Take(9))
    {
        var insertRow = itemCount % 3 == 0;

        if(insertRow)
        {
            @Html.Raw("<div class="row">
    ")
    }

                           <div class="col-md-4">
                               <div class="wp-block product">
                                   <figure>
                                       @*<img alt="" src="~/Images/20852816-6959-f6580ba5 (1).jpg" class="img-responsive img-center">*@
                                       <img src="data:image/png;base64,@Convert.ToBase64String(item.Imagen, 0, item.Imagen.Length)" class="img-responsive img-center" />
                                   </figure>
                                   <h2 class="product-title"><a href="">@Html.DisplayFor(modelItem => item.Description)</a></h2>
                                   <p>
                                       Descripcion del producto
                                   </p>
                                   <div class="wp-block-footer">
                                       <span class="price pull-left">@Html.DisplayFor(modelItem => item.Precio)</span>
                                       <a href="#" class="btn btn-sm btn-base btn-icon btn-cart pull-right">
                                           <span>Add to cart</span>
                                       </a>
                                   </div>
                               </div>
                           </div>

                               if (insertRow)
                               {
                               @Html.Raw("
                           </div>")
        }

        itemCount++;
    }
}

关于jquery - 将 foreach 与 Bootstrap 的网格一起使用以列出元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31799330/

相关文章:

php - Bootstrap、导航标签、下拉菜单;如何根据 URI 设置事件选项卡

javascript - JQuery 在 Firefox 和 Chrome 中无法正常工作

javascript - 为什么在使用 .focus() 时我的 onchange 函数被调用了两次?

javascript - 当不存在类型 ="submit"元素时,表单不会在 ENTER 上提交

html - CSS 如何阻止渲染?

html - Internet Explorer 9 和 10 的 CSS 问题

html - Bootstrap - 将行移动到页面底部

jquery - JQuery UI 中的自定义可调整大小的句柄

html - 字体似乎不起作用

jquery - Bootstrap Modal - 延迟加载图像