【问题标题】:Mvc view is not getting refreshed in Asp.net mvc core 1.1在 Asp.net mvc core 1.1 中,Mvc 视图没有被刷新
【发布时间】:2018-06-12 21:51:33
【问题描述】:

我正在使用 Asp.net core 1.1 开发一个 MVC Web 应用程序。在视图中,我通过循环 div 来创建网格。

@foreach (var eachItem in Model.PageProjects)
                 {
  <div class="media-body no-right">
                                 <div class="media-left">
                                     #@eachItem.ProjectNumber
                                     <h4 class="media-heading"><a href="">@eachItem.ProjectName</a></h4>
                                 </div>
                                 <div class="media-left">
                                     <h4 class="media-heading"><span class="label label-default">Stage @eachItem.Stage</span></h4>

                                 </div>
                                 <div class="media-left">

                                         <h4 class="media-heading">@eachItem.PmUsername</h4>

                                     <span class="text-uppercase">project manager</span>
                                 </div>

                                 <div class="media-left">
                                     <h4 class="media-heading">@eachItem.LastUpdatedOn</h4>
                                     <span class="text-uppercase">last updated</span>
                                 </div>
                             </div>
        }

根据下拉值,我想对网格进行排序

 @Html.DropDownList("StageDropDown", new List<SelectListItem>
                                         {
                                             new SelectListItem { Text = "None", Value = "ProjectNumber"},
                                             new SelectListItem { Text = "Project Manager", Value = "ProjectManager" }, 
                                             new SelectListItem { Text = "Last Updated", Value = "LastUpdatedOn" , Selected = true }
                                         }, "Select Stage", new { @class = "form-control" })

我正在触发 jquery post 事件以调用操作方法

$("#StageDropDown").on("change", function () {

 $.post("/Projects/Index", { sortOrder: $('#StageDropDown :selected').val(), CurrentSort: $('#currentStageSortOrder').val() });

    });

上述事件调用action方法,我正在对列表数据进行排序并使用模型将其分配给div,但视图没有刷新,它显示的是旧值

我使用过 DistributedMemoryCache 和 Session,对此都发表了评论并再次尝试,但视图仍然没有刷新,它显示的是旧值。

值在列表中排序,但排序后的值在呈现视图时没有得到反映。

您能提供建议吗?

提前致谢

【问题讨论】:

  • $.post成功你需要重新绑定你的div,目前你的代码中没有success方法
  • 我使用了替代方法来解决这个问题,而不是 $。使用 var dropdownValue = $('#StageDropDown :selected').val(); window.location.href = '/Projects/Index?sortOrder=' + dropdownValue
  • 它会重新加载页面,你想要吗?

标签: c# jquery asp.net-mvc asp.net-core-1.1


【解决方案1】:

我使用替代方法来解决这个问题,而不是使用 $.post

var dropdownValue = $('#StageDropDown :selected').val(); window.location.href = '/Projects/Index?sortOrder=' + dropdownValue

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-30
    相关资源
    最近更新 更多