===================Ajax.ActionLink
ActionLink方法可以创建一个具有一步行为的锚标签。
例如:
给页面一个链接,点击链接在当前页面显示信息,而不是打开一个新的页面
--视图代码:
@Ajax.ActionLink("ajax",//页面链接名称"GetAjax",//控制器中的方法new AjaxOptions{ UpdateTargetId = "getajax",//要替换的标签 InsertionMode = InsertionMode.Replace,//插入模式:替换标签 HttpMethod = "get"//get请求})
--控制器代码:(返回一个部分视图到前台,需要在视图中创建一个GetAjax.cshtml视图)
public ActionResult GetAjax(){ return this.PartialView();}
===================Ajax表单
案例:异步查询数据
--视图代码:
@using (Ajax.BeginForm("personSearch",//控制器方法 "PersonError",//控制器 new AjaxOptions() { //AjaxOptions对象 HttpMethod="get",//提交方式 InsertionMode = InsertionMode.Replace,//插入模式:替换标签 UpdateTargetId = "div1",//操作的标签 LoadingElementId = "ajax-load",//点击提交按钮时,一个显示加载的状态(这里用的是gif加载图片) OnFailure="loadFailure"//当ajax执行失败时执行一段脚本})){ }
--控制器代码:(返回一个部分视图到前台,需要在视图中创建一个personSearch.cshtml视图)
public ActionResult personSearch(string q){ var list = db.SchoolTypes.Where(r => r.st_name == q).Select(r => r).ToList(); return PartialView(list);}