Asp.net mvc asp.net mvc中如何避免页面刷新

Asp.net mvc asp.net mvc中如何避免页面刷新,asp.net-mvc,model-view-controller,Asp.net Mvc,Model View Controller,当我单击局部视图的任何页面链接时,该相关页面应显示在渲染主体部分中,而无需任何页面刷新。我该怎么做呢?您可以使用与不引人注目的AJAX结合使用的AJAX助手 安装Microsoft.jQuery.Unobtrusive.AjaxNuGet软件包 在_Layout 然后使用带有特定选项的HTML帮助器 代码示例 @Ajax.ActionLink("View All Student Info", "AllStudent", "Home", new AjaxOptions { Up


当我单击局部视图的任何页面链接时,该相关页面应显示在渲染主体部分中,而无需任何页面刷新。我该怎么做呢?

您可以使用与不引人注目的AJAX结合使用的AJAX助手

  • 安装
    Microsoft.jQuery.Unobtrusive.Ajax
    NuGet软件包
  • 在_Layout
  • 然后使用带有特定选项的HTML帮助器
代码示例

@Ajax.ActionLink("View  All Student Info", "AllStudent", "Home", new AjaxOptions  
{  
  UpdateTargetId = "divAllStudent", 
  OnBegin = "fnOnBegin",  
  InsertionMode = InsertionMode.Replace,  
  HttpMethod = "GET",  
  LoadingElementId = "imgloader",  
  OnSuccess= "fnSuccess",  
  Confirm="Do you want to get all student info ?????"  
}, 
new { @class = "btn btn-default" })
[HttpGet]  
public PartialViewResult AllStudent()  
{  
    using (TempEntities db = new TempEntities())  
    {  
        var objAllStudent = db.StudentInfoes.ToList();  
        return PartialView("AllStudent", objAllStudent);  
    }  
}
  • 然后在控制器中添加特定的[GET]路由(WebAPI)
代码示例

@Ajax.ActionLink("View  All Student Info", "AllStudent", "Home", new AjaxOptions  
{  
  UpdateTargetId = "divAllStudent", 
  OnBegin = "fnOnBegin",  
  InsertionMode = InsertionMode.Replace,  
  HttpMethod = "GET",  
  LoadingElementId = "imgloader",  
  OnSuccess= "fnSuccess",  
  Confirm="Do you want to get all student info ?????"  
}, 
new { @class = "btn btn-default" })
[HttpGet]  
public PartialViewResult AllStudent()  
{  
    using (TempEntities db = new TempEntities())  
    {  
        var objAllStudent = db.StudentInfoes.ToList();  
        return PartialView("AllStudent", objAllStudent);  
    }  
}

选项
UpdateTargetId
是AJAX结果将在其中放置结果内容的HTML ID容器。通常您要使用Replace。您可以使用OnBegin和OnSuccess作为Javascript方法来执行显示加载程序、隐藏加载程序等操作

您可以为其执行ajax调用。您使用的是哪个版本的MVC。NET4.6或Core?事实上,这是一个太宽泛的主题,示例代码只能让您了解到这一点。这是给你的。不管Asp.Net的味道如何。嗯