首页 > 解决方案 > 应用了 CSS 类,但没有应用样式

问题描述

在 index.cshtml 中,我使用部分视图显示待办事项:

 <table class="table table-striped">
  @foreach (var todo in Model.Todos)
  {
     <tr id="@todo.TodoId">
        @{Html.RenderPartial("_TodoModel", todo);}
     </tr>
  }

部分观点:

<td class="col-md-1">@Html.CheckBoxFor(m => m.Complete, new { @class = "bigCheckbox", id = "completedFlag"+Model.TodoId })</td>
<td class="col-md-9">
   <span class="@(Model.Complete ? "completed" : "notCompleted")">
      @Model.TodoText
   </span>
</td>
<td class="col-md-2  text-center">
   @Html.ActionLink("Remove Todo", "Remove", "Todo", new { todoId = Model.TodoId }, new { @class = "btn btn-sm btn-danger" })
</td>

当复选框被选中时,javascript 正在调用控制器并更新完成标志,然后再次重定向到索引页面。重新加载发生,新的 css 类应用于元素,但样式仍然是旧的。即使在软刷新时,也会应用新样式。

我可以用javascript改变样式,只是好奇为什么上面的行为?另外,如果模型更改样式也应该更改,我会感觉更干净。

标签: cssasp.net-mvc-4razor

解决方案


推荐阅读