第10章 在ASP.NET MVC 中使用Ajax

第10章 在ASP.NET MVC 中使用Ajax

10.1分布视图

10.1.1 创建和使用分部视图

1.Html.Partial()方法

语法:

public static MvcHtmlString Partial(

this HtmlHelper htmlHelper,

string partialViewName, //分部视图的名称

object model, //用于分部视图的模型

ViewDataDictionary viewData //用于分部视图的视图数据字典

)

说明:分部视图一般放在ViewsShared目录下。

示例:

@Html.Partial(“MyVistor”,ViewData[“Visitors”];

2.Html.Action()方法

语法:

public static MvcHtmlString Action(

this HtmlHelper htmlHelper,

string actionName,

string controllerName,

object routeValues

)

方式

方法

说明

调用分部视图

Partial()

返回HTML 编码的字符串

RenderPartial()

无返回值,以直接写入Htttp流的方式输出

调用动作方法

Action()

返回HTML 编码的字符串

RenderAction()

无返回值,以直接写入Htttp流的方式输出

10.2 ASP.NET MVC中的Ajax开发

10.2.1 使用动作方法处理Ajax请求

1.纯文本数据

2.分部视图

3.结构化数据(json,xml)

如果想允许get请求获取json,请设置

10.3体验 AjaxHelper——无脚本也能不刷新

1.无刷新表单

Ajax.BeginForm

AjaxOptions-对请求前后提供干预

主要属性

说 明

string UpdateTargetId

服务器响应来更新的 DOM 元素的 ID

string Confirm

提交请求之前显示在确认窗口中的消息

string HttpMethod

HTTP 请求方法(GetPost

InsertionMode InsertionMode

将响应插入目标 DOM 元素的模式

int LoadingElementDuration

控制在显示或隐藏加载元素时的动画持续时间

string OnBegin

在更新页面之前调用的 JavaScript 函数

string OnSuccess

在成功更新页面之后调用的 JavaScript 函数

2.无刷新链接

Ajax.ActionLink

3.服务器判断是否是ajax请求

Request.IsAjaxRequest()

说明:Request.IsAjaxRequest()能够区分是否Ajax请求。主要依赖于jQuery在发送Ajax请求之前,向Http请求头插入了一个”x-request-with”的题头。

原文地址:https://www.cnblogs.com/xuzhen97/p/8866803.html