根据从 MSSQL 数据库 C# 检索到的数值,在 div 中动态创建字形星星

Dynamically create glyphicon stars in a div based on numerical value retrieved from a MSSQL database C#

我正在从数据库中检索评级(可以超过 5),我想根据页面加载时收到的值创建字形星标。请参阅下面用于检索值的代码。

int rating_count = DBinteract.get_rating_count(ticket_id);

我尝试根据检索到的值遍历并将字形添加到 div,但是当页面加载时只显示一颗星。

for (int i = 0; i < rating_count; i++)
  {
    this.rating_count.InnerHtml="<span class='glyphicon glyphicon-star'></span>";
  }

div我正在尝试给

加星
  <td>
         <div id="rating_count" runat="server"></div>
  </td>

您需要将字符串相互附加一个才能在生成的 html 中获得多个 span,否则您会多次将相同的 string 分配给 .InnerHtml。更重要的是,如果您还没有这样做,请记住 .innerHtml 需要先初始化为 empty string

this.rating_count.InnerHtml = "";

for (int i = 0; i < rating_count; i++)
{
    this.rating_count.InnerHtml += "<span class='glyphicon glyphicon-star'></span>";
    //               look here: ^^
}

但是,如果您有 Javascript 支持,您可以使用 String.repeat() 完成此任务:

int rating_count = DBinteract.get_rating_count(ticket_id);
this.rating_count.InnerHtml = "<span class='glyphicon glyphicon-star'></span>".repeat(rating_count);