AJAX設計模式實踐 之 可重新整理Ajax應用範例+Framework

來源:互聯網
上載者:User

本文是對AJAX設計模式 之 怎樣構建一個可重新整理的無重新整理應用一文中討論的“可重新整理Ajax設計模式”的實踐,包含了一個對以上設計模式的實現範例,以及全新支援“可重新整理Ajax設計模式”的AjaxHelper v0.7最新版本的介紹。

範例

大家可以先下載範常式序親自體驗!

線上示範

下載:RefreshableAjaxSample.zip

這是一個Asp.Net v1.1下的Web Application,點擊範例網頁中的任意連結,並嘗試驗擊瀏覽器的重新整理按鈕,或者按F5重新整理頁面,可以看到,雖然網頁功能是基於Ajax來實現的,但是,重新整理網頁時是不會丟失當前顯示內容的。

原理

 “可重新整理Ajax設計模式”的實現原理之前的文章中已有概述,這裡就不多說了,大家可以參見範例代碼!

架構

以上範例基於新版的AjaxHelper DotNet Version 0.7構建,在新版本的AjaxHelper中,為實現“可重新整理Ajax設計模式”提供了非常大的便利,具體的改進有:

1、新版本同時提供了AjaxHelper DotNet Version 和支援其它語言環境,如ASP, PHP, Perl等的AjaxHelper Flat Version(Flat版不包含對JSRS-JavaScript Remote Scripting的支援);

2、將之前版本的AjaxHelper中的Updater, Appender等函數封裝到AjaxHelper命名空間,即新版本的函數必須以AjaxHelper.Updater...這樣的方式調用;

3、新增支援“可重新整理Ajax設計模式”的函數有:AjaxHelper.Params, AjaxHelper.Updater2, AjaxHelper.OnPageLoad。

其中,AjaxHelper.Params是一個HashTable,可以以AjaxHelper.Params['paramKey']這樣的方式獲得網頁連結中"#"之後的參數;AjaxHelper.Updater2地使用方法和AjaxHelper.Updater完全一致,只是提供了新的對“可重新整理Ajax設計模式”的隱含支援,調用方法可參見協助檔案或者參見我的Blog中之前的關於AjaxHelper的文章;AjaxHelper.OnPageLoad()需要被放置在網頁的body元素的onload事件中,以實現網頁重新整理時的狀態維持,可參見以上範例中具體的使用方法。

另外注意,在Flat版本中的所有ajaxTemplate參數必須是完整的網頁路徑,包括副檔名,而DotNet版中,ajaxTemplate必須是指向UserControl的路徑,可以包含.ascx副檔名,也可以不包含,建議不包含。

使用中如有任何問題或建議,歡迎給我留言!

下載

AjaxHelper_DotNet_v0.7.zip

AjaxHelper_Flat_v0.7.zip

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.