微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

设置tr背景颜色动态分组按MVC的字段局部视图

如何解决设置tr背景颜色动态分组按MVC的字段局部视图

我有一个动态表,我想将按field1和field2分组的行背景色更改为不同的颜色。 我做了如下代码,但无法正常工作。


var count = 0;
var color = new string[] { " odd"," even" };
var val1 = "";
var val2 = "";
foreach (var val in Model.listofFields)
{
    if (val1 == "" && val2== "")
    {
        val1 = val.field1;
        val2 = val.field2;
    }
    if (val1 == val.field1 && val2 == val.field2)
    {
        count = 0;
    }
    else if ((val1 != val.field1 && val2 != val.field2))
    {
        count = 1;
        val1 = val.field1;
        val2 = val.field2;
    }
    else
    {
        count = 1;
        val1 = "";
        val2 = "";
    }
    <tr class="@color[count]">
    <td>@val.field1</td>
    <td>@val.field2</td>
    <td>@val.field3</td>
    <td>@val.field4</td>
    <td>@val.field5</td>
    <td>@val.field5</td>
</tr>
}

还附加了示例

enter image description here

文件

解决方法

您必须在一个比较变量中设置值,这将帮助您为组着色。

var val1 = "";
string color = "odd";
foreach (var val in Model.listofFields)
{
    if (val1 != (val.field1 + val.field2))
    {
        color = color == "odd" ?  "even" : "odd" ;
        val1 = (val.field1 + val.field2);
    }
    
    <tr class="@color">
    <td>@val.field1</td>
    <td>@val.field2</td>
    <td>@val.field3</td>
    <td>@val.field4</td>
    <td>@val.field5</td>
    <td>@val.field5</td>
</tr>
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。