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助手
- 安装
NuGet软件包Microsoft.jQuery.Unobtrusive.Ajax
- 在_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的味道如何。嗯