Asp.Net-JQuery ajax调用按钮操作

Asp.Net-JQuery ajax调用按钮操作,asp.net,jquery,ajax,Asp.net,Jquery,Ajax,假设我得到了以下按钮:和以下按钮事件处理程序: Protected Sub btnSearch_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnSearch.Click 使用JQuery,我如何调用按钮事件处理程序 我的意思是,我不希望页面刷新,所以这是一种Ajax调用。我不想模拟点击,但点击按钮事件处理程序是调用 $("#<%= btnSearch.ClientID %>").click(); 在Sc

假设我得到了以下按钮:
和以下按钮事件处理程序:

Protected Sub btnSearch_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnSearch.Click
使用JQuery,我如何调用按钮事件处理程序

我的意思是,我不希望页面刷新,所以这是一种Ajax调用。我不想模拟点击,但点击按钮事件处理程序是调用

$("#<%= btnSearch.ClientID %>").click();
在ScriptManager中(如果没有,则必须添加一个),启用页面方法

<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true" />

或者,你可以有一个完全独立的服务,而不是你代码的一部分,它封装了你的搜索逻辑,你可以用多种方式来调用它

因为你们已经更新了你们的问题,你们的问题并不是关于如何执行按钮的点击处理程序,而是关于如何做一个异步操作。而且有点模糊。有一百万种方法可以做到这一点

在ScriptManager中(如果没有,则必须添加一个),启用页面方法

<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true" />

或者,你可以有一个完全独立的服务,而不是你代码的一部分,它封装了你的搜索逻辑,你可以用多种方式来调用它


因为你们已经更新了你们的问题,你们的问题并不是关于如何执行按钮的点击处理程序,而是关于如何做一个异步操作。而且有点模糊。有无数种方法可以做到这一点。

我建议远离微软的AJAX,因为AJAX实在太重了。jQuery有一个非常简单的实现,如果您只需要一个简单的异步回调,pagemethods就是一个不错的选择

另外,为了节省您自己的一些麻烦,请查看“json2”库,以便对所有内容进行json序列化。我还没有让它崩溃,我不得不序列化一些相当复杂的对象。
我建议远离微软的AJAX,因为它实在太重了。jQuery有一个非常简单的实现,如果您只需要一个简单的异步回调,pagemethods就是一个不错的选择

另外,为了节省您自己的一些麻烦,请查看“json2”库,以便对所有内容进行json序列化。我还没有让它崩溃,我不得不序列化一些相当复杂的对象。

<input type="button" onclick="search()" value="Search" />

// Then in javascript...
function search()
{
    PageMethods.Search(function(result)
    {
        // deal with search result here (this is the success handler)
    });
}