十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
原文:Understanding AJAX Helpers in ASP.NET MVC
作者:
Shailendra Chauhan works as Software Analyst at reputed MNC and has more than 5 years of hand over Microsoft .NET technologies. He is a .NET Consultant and is the founder & chief editor of www.dotnet-tricks.com and www.dotnetinterviewtricks.com blogs. He is author of book ASP.NET MVC Interview Questions and Answers.
He loves to work with web applications and mobile apps using Microsoft technology including ASP.NET, MVC, C#, SQL Server, WCF, Web API, Entity Framework,Cloud Computing, Windows Azure, jQuery, jQuery Mobile, Knockout.js, Angular.js and many more web technologies. More...
创新互联建站成都网站建设按需制作网站,是成都网站营销推广公司,为成都建筑动画提供网站建设服务,有成熟的网站定制合作流程,提供网站定制设计服务:原型图制作、网站创意设计、前端HTML5制作、后台程序开发等。成都网站营销推广热线:028-86922220
AJAX助手主要用于创建已启用AJAX的元素来执行异步请求,如启用了Ajax的表单或链接。AJAX助手是AJAXHelper类的扩展方法,包含在System.Web.Mvc.Ajax命名空间中。
AJAX HTML | 元素示例 |
基于action/controller的启用了AJAX的链接 | @Ajax.ActionLink("Load Products", "GetProducts", new AjaxOptions {UpdateTargetId = "Products-container", HttpMethod = "GET" }) 输出:Load Products |
ASP.NET支持基于JQuery非介入式的AJAX。非介入式意味着可以使用辅助方法来定义Ajax功能,而不是通过在视图内添加代码块来实现。
在AjaxOptions类定义了用来为AJAX请求生命周期内的不同阶段指定回调函数的属性。通过AjaxOptions类为AJAX助手提供了以下属性:
属性 | 描述 |
Url | 指定要请求的服务器的地址 |
Confirm | 指定将要显示给最终用户的确认对话框内消息。当用户在确认对话框内单击OK按钮,Ajax将执行调用。 |
OnBegin | 指定在发送Ajax请求前要调用的JavaScript函数名称。 |
ONComplete | 指定在Ajax请求完成后要调用的JavaScript函数名称。 |
OnSuccess | 指定在Ajax请求成功后要调用的JavaScript函数名称。 |
OnFailure | 指定在Ajax请求失败后要调用的JavaScript函数名称。 |
LoadingElementId | 用来指定在Ajax请求期间用来显示进度信息或动画的容器的id |
LoadingElementDuration | 指定进度信息或动画的持续时间,单位为毫秒 |
UpdateTargetId | 指定用来填充action方法返回的HTML的目标容器的id |
InsertionMode | 指定目标容器的填充防守。可选择值包括InsertAfter、 InsertBefore 和Replace(默认值) |
默认情况下,Web浏览器允许AJAX调用Web应用程序源站点的数据,即托管服务器的站点。这样做的目的是为了防止各类安全问题,如跨站脚本(XSS)***。不过,有时候还是需要与外部托管的API进行交互,如Twitter或Google。因此,要与这些外部的API或服务器进行交互的Web应用程序必须支持JSONP请求或跨资源共享(CORS)。在默认情况下,ASP.NET MVC是不支持JSONP或CORD的,为此,需要做一点点的编码和配置。