所以我试图使用Javascript回调一个代码隐藏方法,看起来这样做的唯一方法就是使用
Page.ClientScript.RegisterClientScriptBlock()
方法
我不需要将任何数据返回给调用javascript函数。
这不是一个Web服务,所以我不打算使用ajax调用,但这似乎有一种比使用Page.ClientScript编程的客户端回调更容易的方法.....
答案 0 :(得分:1)
Page.ClientScript.RegisterClientScriptBlock()
仅用于在页面中推送一些JavaScript代码块。这不是为了调用服务器方法。
如果要从JavaScript调用服务器代码,则应检查[WebMethod]
属性。基本上,您将该属性放在页面的公共静态方法之上,然后可以在JavaScript中调用它。
C#示例:
[WebMethod]
public static void MyWebMethod(string foo)
{
doSomething(foo);
}
VB.NET示例:
<WebMethod>
Public Sub MyWebMethod(foo As String)
doSomething foo
End Function
然后,在JavaScript中:
<script type="application/javascript">
PageMethods.MyWebMethod(someValue);
</script>
你已经完成了。