0

我有一个包含 Status 属性的 Orders 模型。根据Status的值,我想设置dom中多个元素的CSS。

<span class = "green">ORDERED</span>
<span class = "orange">SHIPPED</span>
<span class = "gray">RECEIVED</span>

我想在 Details 视图中根据 Order.Status 的值设置那些绿色/橙色/灰色类。我怎样才能做到这一点?

4

1 回答 1

7

您可以编写一个自定义助手,它将根据 Status 值返回正确的 CSS:

public static class Htmlextensions
{
    public static string GetStatusCss(this HtmlHelper html, string status)
    {
        if (string.Equals(status, "ORDERED", StringComparison.OrdinalIgnoreCase))
        {
            return "green";
        }
        else if (string.Equals(status, "SHIPPED", StringComparison.OrdinalIgnoreCase))
        {
            return "orange";
        }
        return "gray";
    }
}

然后你可以在视图中调用这个助手来获取正确的 CSS 类:

<span class="@Html.GetStatusCss(Model.Status)">
    @Html.DisplayFor(x => x.Status)
</span>
于 2013-01-29T16:31:24.383 回答