Go homepage(回首页)
Upload pictures (上传图片)
Write articles (发文字帖)

The author:(作者)归海一刀
published in(发表于) 2014/3/16 2:55:49
轻量级的Ajax解决方案——DynAjax的JQuery版_[AJAX教程]

轻量级的Ajax解决方案——DynAjax的JQuery版_[AJAX教程]

下班了,刚到家,老婆在做饭,小家伙在玩玩具,暂时没骚扰我。呵呵!趁这空闲写会博客。前两天答应改造DynAjax为JQuery版本,今天就完成这个任务吧。
上一篇随笔介绍了轻量级的Ajax解决方案DynAjax,可惜原作者只有写支持Prototype.js版本的。
DynAjax用到Prototype.js特殊用法的地方不多,就dynAjax.aspx和dynAjax.aspx.cs。
特殊用法分别是(红色部分标出):



以上是dynAjax.aspx的,下面的是dynAjax.aspx.cs的:



分别说说红色部分的用法:



按以上方法改版后,文件变动如下:



改版后dynAjax.aspx代码如下:


<%@ Page Language="C#" AutoEventWireup="true" CodeFile="dynAjax.aspx.cs" Inherits="_dynAjax" %>
/**********************************************************************
* DYNAJAX Project - code by Benoit BEGUIN
* first release: october 2007
* last update: february 2008
* Paris, France
*
* DynAjax web site: http://www.dynajax.org/
* Any question: mailtadmin@dynajax.org
* Company support: http://www.odesys.fr
**********************************************************************/
/* ------- GENERIC CONTENT ------- */
function DynAjaxManager(){}

DynAjaxManager.prototype = {
initialize: function() {},
getDynaData: function(classId, methodName, args, callBackMethod) {
var dynaResult = null;
var asyncCall = false;
if (callBackMethod && typeof callBackMethod == "function") {
asyncCall = true;
}

.ajax({
type:"POST",
url:"AjaxDataHandlers/DynAjaxHandler.aspx",
data:"classId=" + encodeURIComponent(classId) + "&methodName=" + encodeURIComponent(methodName) + "&methodArgs=" + encodeURIComponent(JSON.stringify(args)),
async:asyncCall,
success:function(request){
dynaResult = eval('('+request+')');//JSON.parse(request);
if (callBackMethod) {
callBackMethod(dynaResult);
}
},
error:function(e) {
dynaResult = null;
if (callBackMethod) {
callBackMethod(dynaResult);
}
}
});
return dynaResult;
}
};
var dynAjaxManager = new DynAjaxManager();
/* ------- END OF GENERIC CONTENT ------- */
/* ------- DYNAMIC CONTENT ------- */
<%= dynamicJsText %>
/* ------- END OF DYNAMIC CONTENT ------- */


dynAjax.aspx.cs 第64行改为如下代码:


dynamicJsText += "function " + className + "Class(){}\n";

别忘了在你的ajax特效网页更新js引用(jquery.js和json2.js)。

最后,我做了个演示用的压缩包,下载dynAjax_v1.04_jquery_by_kai.ma.rar Enjoy it!


来源:http://www.cnblogs.com/kaima







If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)





QQ:154298438
QQ:417480759