从jquery端调用代码隐藏函数

从jquery端调用代码隐藏函数,jquery,asp.net,Jquery,Asp.net,如何从客户端调用代码隐藏函数 // Code-behind function: public void CodeBehindFunction(int i) { ... } 我想从客户端调用它 // Client-side call: $(this). ?? 正确地说,您的意思是希望从客户端代码调用服务器端例程 我建议您使用JavaScript强制回发:uu doPostback'CodeBehindFunction',ipParameter;-然后在服务器端代码的Page Init事

如何从客户端调用代码隐藏函数

// Code-behind function:
public void CodeBehindFunction(int i)
{
   ...
}
我想从客户端调用它

// Client-side call:
$(this). ?? 

正确地说,您的意思是希望从客户端代码调用服务器端例程

我建议您使用JavaScript强制回发:uu doPostback'CodeBehindFunction',ipParameter;-然后在服务器端代码的Page Init事件中,通过以下方式捕获此自定义回发:

if (Request.Params["__EVENTTARGET"] == "CodeBehindFunction")
{
    int i;
    // Try to convert the argument (in the example this is the value of iParameter)
    if (int.TryParse(Request.Params("__EVENTARGUMENT"),out i)
    {
        CodeBehindFunction(i);
    }
}

或者使用通过调用的Web服务。

您可以使用ajax调用CodeBehindFunctionint i 但您必须将该方法标记为webmethod和static:

[WebMethod]
public static void CodeBehindFunction(int i)
{
   ...
}
然后从js调用它

$.ajax({
                type: "POST",
                url: "/yourPage.aspx/CodeBehindFunction",
                data: "{'i':'"+num+"'}", //PUT DATA HERE
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function (msg) { 

                 }
            })

**yourPage.aspx是声明CodeBehindFunction方法的页面

我建议您提供一些代码,或者展开您的问题,否则您会得到一些-1…我不能做回发,因为此页面中有很多回调函数,因此您应该使用Web服务并使用jQuery.ajax调用。您的意思是说您不能吗用这个例子来做你需要做的事情?我正在使用它。在我的页面中,我有一个ui对话框,当我关闭ui对话框时,我会在其中加载另一个页面。我所有页面的回调函数都使用另一个页面的raisecallback函数。通常,当我打开ui对话框时,他们使用我的页面raisecallback函数,然后所有回调函数都使用另一个页面的raisecallback函数所有参数都是未定义的…我想如果我调用search_button.Attributes[OnClick]=Page.ClientScript.GetCallbackEventReferencethis,Basla,Istek,null,Hata,true;在jquery方面,也许我能解决我的问题,但我不知道该怎么做