[英]mixing css with c# mvc in razor
How can I simplify this code using razor engine (c# mvc)..Is there any way to mix c# and css inside razor engine? 如何使用razor引擎(c#mvc)简化此代码..有没有办法在razor引擎中混合使用c#和css?
Actually i am not getting correct answer while trying this 实际上我在尝试这个时没有得到正确答案
@model FoodViewModel
@foreach (FoodView item in Model.Foodviews)
{
@if (item.vote == 1)
{
<input type="radio" name="example" class="rating" value="1" checked="checked" />
<input type="radio" name="example" class="rating" value="2" />
<input type="radio" name="example" class="rating" value="3" />
<input type="radio" name="example" class="rating" value="4" />
<input type="radio" name="example" class="rating" value="5" />
}
else if(item.vote == 2)
{
<input type="radio" name="example" class="rating" value="1" />
<input type="radio" name="example" class="rating" value="2" checked="checked" />
<input type="radio" name="example" class="rating" value="3" />
<input type="radio" name="example" class="rating" value="4" />
<input type="radio" name="example" class="rating" value="5" />
}
else if (@item.vote == 3)
{
<input type="radio" name="example" class="rating" value="1" />
<input type="radio" name="example" class="rating" value="2" />
<input type="radio" name="example" class="rating" value="3" checked="checked" />
<input type="radio" name="example" class="rating" value="4" />
<input type="radio" name="example" class="rating" value="5" />
}
else
{
<input type="radio" name="example" class="rating" value="1" />
<input type="radio" name="example" class="rating" value="2" />
<input type="radio" name="example" class="rating" value="3" />
<input type="radio" name="example" class="rating" value="4" />
<input type="radio" name="example" class="rating" value="5" />
}
}
Why not DRY up your code by trying something like: 为什么不通过尝试以下方式来干扰您的代码:
for (int i = 1; i <= 5; i++)
{
<input type="radio" name="example" class="rating" value="@i"
@if(i == item.vote)
{
checked="checked"
}
/>
}
Presumably you want some kind of label / value however? 大概你想要某种标签/价值吗?
You could try a simple loop? 你可以尝试一个简单的循环?
@for (var i = 1; i < 6; i++) {
if (i == item.vote) {
<input type="radio" name="example" class="rating" value="@i" checked>
} else {
<input type="radio" name="example" class="rating" value="@i">
}
}
Or, even better, with a html helper; 或者,甚至更好,使用HTML帮助程序;
@for (var i = 1; i < 6; i++) {
@Html.RadioButton("example", i, item.vote == i, new { @class = "rating" })
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.