从C#静态Web方法调用Javascript函数(页面方法)

时间:2015-05-30 10:16:06

标签: javascript c# asp.net static webmethod

我用过:

ScriptManager.RegisterStartupScript(this, GetType(), "", "MyJSFunction('parameter')", true);

MyJSFunction到达JavaScript中的Page_Load函数,效果很好。现在我需要调用让我们说相同的功能但是来自静态网络方法,但我在this&上得到了这2个错误。 GetType()

  

这个:关键字'这个'在静态属性静态方法中无效,   或初始化的静态字段。

     

GetType():非静态字段需要对象引用,   方法或属性' objec.GetType()'。

我试图像这样重新格式化代码:

ScriptManager.RegisterStartupScript((Page)(System.Web.HttpContext.Current.Handler), ((Page)(System.Web.HttpContext.Current.Handler)).GetType(), "", "MyJSFunction('parameter')", true);

没有显示错误,但它没有达到JavaScript功能。

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:3)

在JS代码中对Web方法的调用成功完成(回调)后调用JavaScript函数。你不能从后面的代码“调用”客户端代码;您可以将JS函数调用注册为“启动脚本”,但不能在此处注册,因为对Web方法的调用不涉及页面的回发,也不会导致Page_Load运行。