javascript - 在 MVC 中使用 jquery 更改 foreach 循环中的 CSS 类

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

谁能帮我完成这个任务

@foreach (var item in Model.Premium)
{
    <div class="col-md-2">
        <div id="test" class="panel">
            <div class="panel-heading text-center">
                 <h1 class="panel-title" style="font-size:x-large;font-weight:400">
                      @item.year
                 </h1>
             </div>
             <div class="panel-body text-center" style="font-size:x-large;font-weight:300"> 
                 $@item.price
             </div>
         </div>
     </div>

     <script>
         var year = @item.cy_year;
         var OddOrEven = year % 2;

         if (OddOrEven = 0) {
              $('#test').addClass("panel-default");
         }
         else 
         {
              $('#test').addClass("panel-info");
         }
     </script>
}  

在这段代码中,我从表格中获取年份和价格列表。我想要的是每年在 Bootstrap 面板中添加它的价格,然后检查面板是奇数还是偶数。对于所有奇数面板,我想添加 Bootstrap 类 "panel-default",对于所有偶数面板,我想添加 Bootstrap 类 "panel-info"

谢谢

最佳答案

问题出在您的 jQuery 上,它以 ID 为“test”的元素为目标,但在每次迭代中您都输出相同的 ID,因此 jQuery 无法检测到您要以哪个元素为目标。您实际上不需要任何 javascript。

在您的代码中,您根据元素的年份计算奇数或偶数,实际上您可以为此在迭代器上使用一个计数。如果您真的想使用年份,只需替换

@Html.Raw(i % 2 == 0 ? "panel-default" : "panel-info")

@Html.Raw(@item.cy_year % 2 == 0 ? "panel-default" : "panel-info")

代码如下:

@{int i = 0;}
    @foreach (var item in Model.Premium)
    {
        <div class="col-md-2">
            <div class="panel @Html.Raw(i % 2 == 0 ? "panel-default" : "panel-info")">
                <div class="panel-heading text-center">
                    <h1 class="panel-title" style="font-size: x-large; font-weight: 400">@item.year</h1>
                </div>
                <div class="panel-body text-center" style="font-size: x-large; font-weight: 300"> $@item.price</div>
            </div>
        </div>
        i++;
    }

关于javascript - 在 MVC 中使用 jquery 更改 foreach 循环中的 CSS 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41151298/

相关文章:

javascript - 将数字字段中的数字与新创建的 js div 的数量相关联

javascript - 转到下一个 div 时,Jquery 悬停操作消失

c# - 实时分析数据

javascript - jQuery PreventDefault 停止自动完成工作

html - 显示大数字和侧面几个文字的信息图表的最简单方法

javascript - 如何缩小 HighCharts 中 y 轴上数字之间的空间

html 页脚出现在包装内?

javascript - 折叠 DataTable 中的表头破坏了我的表格格式

javascript - 如何仅缓冲来自可观察源的选定项目集并立即发出其他项目?

javascript - 如何阻止 HTML 复选框在点击时获得焦点?