在 cshtml 页面中,我可以根据数据库值选择一个类。示例:
<div class="alert @item.State" role="alert">@item.State</div>
“状态”是我的表的枚举,定义如下:
public enum States
{
Ready,
Setup,
Pause,
Error,
Maintenance,
Emergency,
Disconnected
}
上面的 Razor 语法会根据元素值向我的警报添加一个类。好!
但现在我需要将此类“翻译”为 Bootstrap 的类。示例:
Ready: alert-primary
Pause or Disconnected: alert-secondary
Error: alert-danger
etc...
我可以使用 Razor 手动执行此操作,但我想知道是否有直接在 css 中执行此操作的便捷方法,例如(元代码):
.Ready {
return alert-primary
}
.Pause, .Disconnect {
return alert-secondary
}
最佳答案
您可以声明一个包含类名的字符串数组:
string[] ClassList = new string[]
{
"ReadyClass", "SetupClass", "PauseClass", "ErrorClass", "MaintenanceClass", "EmergencyClass", "DisconnectedClass"
};
现在您可以使用以下行显示等效的类名
@ClassList[(int)item.State]
我没有测试它,但它应该可以工作。
关于css - 从元素值中选择一个 css 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47484778/