原文: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...
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" }) 输出:<a data-ajax="true" data-ajax-method="GET" data-ajax-mode="replace" data-ajax-update="#Products-container" href="/Home/GetProducts">Load Products</a> |
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的,为此,需要做一点点的编码和配置。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。