【发布时间】:2010-01-04 21:32:15
【问题描述】:
我一直在 ASP.NET 2.0 项目中使用 Anthem.NET 进行一些辅助项目,并且对这个框架独有的一个巧妙的功能有疑问。我曾使用 Telerik 和 Microsoft ASP.NET AJAX 框架,并且能够在缺少页面(服务器端)接缝的代码中的“ajaxified”控件中执行 JavaScript 函数。
可以在此处找到国歌示例: http://anthem.talloaksoftware.com/InvokeClientSideFunctionAfterCallBack.aspx?1
基本上,您使用 Ajax 更新面板(在 Anthem 框架中)包装一个文本框和一个按钮,然后在代码隐藏(或内联代码)页面中,您可以在回调完成后执行一个 javascript 函数。但是,您的服务器端代码实际上指定了将运行的 javascript 代码。
示例: 以下代码在单击按钮时执行,在向服务器执行 ajax 请求后,执行服务器端指定的 JavaScript 函数。
Anthem.Manager.AddScriptForClientSideEval("ClientSideFunction();");
所以,只要 JavaScript 函数“ClientSideFunction()”存在,它就会在回调完成后执行。我可以立即看到包含 jQuery 和利用此功能将如何形成一个非常有趣的组合。代码仍然可以用传统的回发模型编写,但可以在服务器端代码执行后调用 JavaScript 代码。这将允许服务器端代码使用 jQuery 内置函数“动画化” HTML 对象。
我的问题是,如何使用 .NET Framework 3.5 中内置的 ASP.NET AJAX 3.5 复制此行为?它可以像 Anthem.NET 框架提供的那样轻松复制吗?
Anthem 不再是一个活跃的项目(在 sourcefourge 上),所以我觉得使用受支持和流行的 ASP.NET AJAX 框架(尤其是 4.0 即将推出)构建新项目是明智的,所以我正在寻找一个等效的解决方案.
【问题讨论】:
标签: asp.net javascript jquery ajax callback