Javascript ASP.NET MVC-添加属性取决于模型变量
我需要根据DaysTillEvent变量的值为TR元素设置不同的颜色(样式)。我有以下代码:Javascript ASP.NET MVC-添加属性取决于模型变量,javascript,jquery,asp.net-mvc,razor,Javascript,Jquery,Asp.net Mvc,Razor,我需要根据DaysTillEvent变量的值为TR元素设置不同的颜色(样式)。我有以下代码: string colorOfRecord = String.Empty; if (item.DaysTillEvent <= (2*7)) { colorOfRecord = "class=danger"; } else if (item.Days
string colorOfRecord = String.Empty;
if (item.DaysTillEvent <= (2*7))
{
colorOfRecord = "class=danger";
}
else if (item.DaysTillEvent <= (4 * 7))
{
colorOfRecord = "class=warning";
}
string colorOfRecord=string.Empty;
如果(item.DaysTillEvent)你所说的但代码不“小心”是什么意思?你在做一个条件检查。无论你是这样做,还是使用javascript都不会有任何区别。是的,我理解,结果没关系。我是说在“小心”下更纯的html。正如我想象的那样,视图应该尽可能的纯html…MVC中的视图通常是用Razor代码(服务器上运行的C代码)生成的。例如@html.TextBoxFor(m=>m.SomeProperty)
这当然不是纯html,所以我认为这不是一个有效的参数。就我个人而言,我会有一个带有属性公共字符串ClassName
的视图模型,该属性返回要使用的类的名称,然后返回
,因为我更喜欢最小化视图中的逻辑,但您的方法没有错。更重要的是就是你要保持一致。我没有说纯html,我说的是“尽可能纯”。所以,jQuery变量会更纯,但它可能会有更多的潜在问题。所以,我想找到“中间”以及哪个变量更可取。我的意见是,你的类名变量不好,因为:1.html取决于控制器(设计师无法更改设计,需要重新编译应用程序),2.属性“类”在某些情况下是不必要的…为什么它更纯粹?无论采用哪种方式,您仍然需要访问项的值。daysillevent
是您模型中的一个值。在控制器、视图或javascript中执行此操作实际上没有什么区别。您需要重新编译应用程序的注释毫无意义在我的备选建议中,ClassName
的值取决于模型属性的值。
<tr @colorOfRecord>...</tr>