You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何基于MODEL值为元素设置条件样式以切换背景色?

基于Model值设置元素条件样式的正确写法

你的代码写法有误,Razor语法中不能将三元表达式拆分开来写,正确的做法是把整个样式相关的取值用Razor表达式包裹计算。

方法一:内联条件样式

直接在style属性中使用三元表达式,用@()包裹确保服务器端正确解析:

<div class="col-6" 
     style="background-color: @(Model.QuestionAnswers[i].answers[j].answerSelected ? "green" : "darkorange")">
    <!-- 元素内容 -->
</div>

这里的@()会执行括号内的逻辑判断,根据answerSelected的布尔值返回对应的颜色字符串,最终渲染出正确的HTML样式属性。

方法二:使用CSS类(更推荐)

把样式定义到CSS类中,再根据条件添加对应的类名,这样更符合样式与结构分离的原则,也便于后续样式维护:

/* 先在样式文件中定义类 */
.bg-green {
    background-color: green;
}
.bg-darkorange {
    background-color: darkorange;
}

然后在Razor视图中动态添加类:

<div class="col-6 @(Model.QuestionAnswers[i].answers[j].answerSelected ? "bg-green" : "bg-darkorange")">
    <!-- 元素内容 -->
</div>

内容的提问来源于stack exchange,提问作者Mark C

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 19:11:03