提问人:Philkav 提问时间:7/20/2010 更新时间:7/23/2010 访问量:9064
从 Telerik radconfirm 调用 C# 代码
Calling C# code from a Telerik radconfirm
问:
是否可以从 Telerik radconconfirm 调用 C# 代码?我可以让它调用 Javascript,但没有服务器端代码。我希望用户单击一个按钮,该按钮会给他们一个弹出框(radconfirm)。使用 radconfirm - 如果用户选择“是”,则将执行 c# 代码,如果他们单击“取消”,则不会执行任何代码
<asp:Button
ID="button1"
runat="server"
CssClass="resetOk"
Text="OK"
OnClientClick="radconfirm('<h3 style=\'color: #333399;\'>
Are you sure you want to reset this budget?</h3>',confirmCallBackFn,
330, 100,null,'Confirm Reset'); return false;"
/>
答:
0赞
lingvomir
7/20/2010
#1
您可以在页面上添加 RadAjaxManager,然后在 confirmCallBackFn 中发出 Ajax 请求。这将在服务器上引发一个事件,您将能够执行服务器代码,而无需更新页面上的任何控件 - 有关实现详细信息,请参阅 telerik 帮助。
0赞
Todd
7/22/2010
#2
您(至少)有两个选项用于从 RadConfirm(或任何 JavaScript 事件)调用服务器代码。在客户端事件处理程序中,执行以下任一操作:
- A) 使用 Microsoft AJAX 执行 “偷偷摸摸的回发”和流程 服务器端代码
- B) 使用 jQuery(或 MSFT AJAX) 调用 Web 服务 执行代码
选项 B 优于选项 A,因为它避免了 ASP.NET 页面生命周期,并且是执行服务器代码以响应客户端事件的一种更轻、更快速的方法。仅当在服务器上执行的代码需要更新页面上 ASP.NET 服务器控件时,才使用选项 A。
帮助您选择任一选项的参考资料:
从 JavaScript 使用 RadAjaxManager 执行 AJAX 回发
0赞
Sean Molam
7/23/2010
#3
嗨,据我所知,您想阻止 onclick 的执行,就像您可以使用标准确认弹出窗口一样,telerik 网站上有一篇知识库文章:使用 radconfirm 阻止执行线程
评论