ASPMVC2问题-试图在视图中的for循环中显示图像

本文关键字:for 循环 显示 图像 显示图 视图 问题 ASPMVC2 | 更新日期: 2023-09-27 18:00:54

我正在尝试显示视频游戏评论的排名。排名是根据5颗星中的金星数显示的。因此,如果一个游戏的评论分数为3,那么应该有3颗金星,然后是两颗灰色/空星。

我的视图中有以下循环来渲染图像:

<% for (int i = 0; i < Model.Game.ReviewScore; ++i)
       { %>
           <img src="~/Content/Images/Review/goodscore.png" alt="" runat="server" />
    <% } %> 
<% for (int j = 0; j < (5 - Model.Game.ReviewScore); ++j)
       { %>
           <img src="~/Content/Images/Review/badscore.png" alt="" runat="server" />
    <% } %>

问题是在循环中仅显示一个goodscore.png图像。类似地,如果分数允许空星,则只显示一个badscore.png

查看分数为3的游戏的渲染HTML,我看到:

<img src="../Content/Images/Review/goodscore.png" />
<img />
<img />
<img src="../Content/Images/Review/badscore.png" />
<img />

所以,看起来我循环中的数学是正确的,只是图像路径没有被写入第2+次迭代中。有什么想法吗?

ASPMVC2问题-试图在视图中的for循环中显示图像

我怀疑您需要删除img标记中的runat="server"。这个命令告诉ASP处理标记。您希望客户端显示图像。

使用一个助手,例如:Url.Content(...),在MVC中插入以~开头的正确路径。