从jquery运行服务器端方法

时间:2011-04-13 08:15:16

标签: c# jquery asp.net ajax

我知道从jQuery使用ajax的方法我可以从aspx或asmx文件调用WebMethod。没关系,但我只能将我的项目逻辑放在ascx.cs文件中。这是一个特定的CMS,我无法做任何事情。

所以我的问题是基于下面描述的例子:

让我们说用户已登录并正在查看文章。一个用户想要将其标记为收藏,因此单击一个按钮。在没有刷新页面的服务器端,应该运行一个适当的方法,将这篇文章添加到他的收藏夹中,然后在客户端有一个警告 - “成功”。

我不希望任何人为我编写代码,因为它只是一个例子,用于描述我希望能够实现的功能以及使用哪种技术。

感谢您的帮助。

P.S。我正在使用ASP.Net 2.0

2 个答案:

答案 0 :(得分:1)

ASCX文件无法直接从客户端访问(因此,无法通过AJAX调用进行定位)。

如果您的逻辑真的必须封装在ASCX文件中,您可以在ASPX中添加一个调用相应ASCX方法的入口点WebMethod。你可能会遇到一些与WebMethods static相关的困难,所以你最终可能需要重构一下,这取决于你现在的代码结构。

答案 1 :(得分:0)

您可以对远程页面进行ajax调用(使用服务器端方法使用ascx控件),然后解析输出(例如查找世界“SUCCESS”)以验证您的方法是否已执行。不是很优雅,但它会起作用。