【Vegas原创】MagicAjax使用总结

2年前 (2022) 程序员胖胖胖虎阿
229 0 0


    1,导入MagicAjax.dll
    2,需无刷新区域加入AjaxPanel
    3,按错误提示在web.config中添加MagicAjax声明
    4,页面提交时会出现回发或回调参数无效错误,解决方法:

【Vegas原创】MagicAjax使用总结 <pages enableEventValidation="false"></pages>

以下内容转自其他网站:

          做什么用的?
以最简单的方式整合AJAX功能到页面中,不需要修改ASP.NET控件,不需要写习新的控件,不需要撰写JAVASCRIPT

特点:
1,
只需在WEB.CONFIG里加入一点点配置信息
2,
只用一个AJAXPANNEL就实现AJAX功能
3,
只要把需要无刷的控件放进AJAXPANNEL就可以了(这个好玩,局部无刷)
4,
不需要写JAVASCRIPT(估计不少人对这个头痛)
5,AJAX
功能和普通的POSTBACK可以共存于一个WEBFORM,MAGICAJAX处理模块只处理包含在AJAXPANNEL中的控个的CALLBACK动作
6,VIEWSTATE
的内容对于POSTBACKCALLBACK来说,都是可见的
7,
提供许多静态方法帮你处理AJAXCALL,例如发送JS到客户端
8,CALLPACK
时有一个LOADING指示
9.MAGICAJAX
的页面会缓存至IE缓存,当用户点回退按钮时,会看到他前一步的操作
10
支持IEFIREFOX,未来支持更多浏览器
11,
当浏览器不支持JS或者不是MAGICAJAX支持的类型的时候,页面将渲染成传统的形式

 特性不少,最重要的是通过上面,你可以看到,它不用你大动干弋,而且兼容性确实不错,细节上处理的也好

使用步骤:
1,在WEB.CONFIG中加入配置节
<httpModules>
<add name="MagicAjax" type="MagicAjax.MagicAjaxModule, MagicAjax" />
</httpModules>
2,引入程序集,加入AJAXPANNEL控件
<%@ Register TagPrefix="ajax" Namespace="MagicAjax.UI.Controls" Assembly="MagicAjax" %>
<ajax:AjaxPanel id="AjaxPanel1" runat="server">
</ajax:AjaxPanel>
这个步骤不用手工了吧,直接在VS的TOOLBOX里ADD/REMOVE,然后将AJAX PANNEL添到里面,拖到WEBFORM上,VS.NET会帮你加入引用,生成标记了
3,把要使用AJAX功能的控件拖进AJAXPANNEL里,撰写这些控件的事件即可

处理AJAXCALL
一般可以用MagicAjaxContext.Current.IsAjaxCall判断是否是AJAXCALL事件,不过,它不准确,如果事件是由客户端引发的,就没问题,但是如果是另一个WEBFORM用TRANSFER来引发的话,它就判断错误,正确的方法是用MagicAjaxContext.Current.IsAjaxCallForPage

 

版权声明:程序员胖胖胖虎阿 发表于 2022年10月6日 下午2:32。
转载请注明:【Vegas原创】MagicAjax使用总结 | 胖虎的工具箱-编程导航

相关文章

暂无评论

暂无评论...