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