如何根据型号值显示css div?

时间:2013-12-30 03:42:48

标签: jquery css asp.net-mvc-4

我正在研究mvc4项目

我有以下代码html:

<div class="rating">Rating</div> <div class="ratingpoint" title="rating">
<span class="font-icon-star"></span> 
<span class="font-icon-star"></span> 
<span class="font-icon-star-line"></span>
<span class="font-icon-star-line"></span>
<span class="font-icon-star-line"></span>
</div> 

它会显示css stars,如下图所示。

但我希望这取决于我的Model.rating values

我试过跟随

 @foreach (var item in Model.MYTABLE)
{ 
  <div class="rating">Rating</div> <div class="ratingpoint" title="rating">
@if(@item.rating == 2){
    <span class="font-icon-star"></span> 
    <span class="font-icon-star"></span> 
}//but how to show the full stars ans below empty stars ?
    <span class="font-icon-star-line"></span>
    <span class="font-icon-star-line"></span>
    <span class="font-icon-star-line"></span>
    </div> 
}  

见图片附图2明星和3空 enter image description here

  

如果我将评级值设为4,那么我想显示4颗满星和1颗空星

2 个答案:

答案 0 :(得分:0)

在课堂上提出条件。我不确定你所有的支票。如果你有多个,你可以像这样组合它们

<span class="@(Model.rating == 2 ? "font-icon-star" : Model.rating == 4 ? "font-icon-star-line" : "")"></span> 

答案 1 :(得分:0)

@for (int i=0; i < item.rating; i++) 
{ 
    <span class="font-icon-star"/> 
}
@for (int i=item.rating; i < 5; i++) 
{ 
    <span class="font-icon-star-line"/> 
}

或者您可以执行类似

的操作
@for (int i=0; i<5; i++)
    if (i < item.rating)
    {
        <span class="font-icon-star"/> 
    }
    else
    {
        <span class="font-icon-star-line"/> 
    }