您好,登錄后才能下訂單哦!
原文: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進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。