http://msdn.microsoft.com/zh-cn/library/ms153106%28v=vs.110%29.aspx
我是参照这个链接里的代码例子写的,其中点击ClientCallBack2按钮后ReceiveServerData2可以正常调用,页面的CallBack 2 result后面的数字也会发生变化,但在点击ClientCallBack1时,会提示ReceiveServerData1未定义,官网说ClientScript.GetCallbackEventReference方法的context参数可以传递原封不动的东西,官网(上面的连接)里的例子中,这个参数就是定义ReceiveServerData1的JS代码。我也通过添加alert试过了,点击按钮后会先调用context(如果context是JS),后在调用ClientScript.GetCallbackEventReference的clientCallback参数(是一个JS函数的名字)指定的客户端函数,在这个官网例子中这个参数是“ReceiveServerData1”。
所以问题如上所述,为什么点击ClientCallBack1时,会提示ReceiveServerData1(方法)未定义。
因为ReceiveServerData1发放就是未定义
var context = funciont Abc(){var b = 1 + 1;};
等同于var context = function(){var b = 1 + 1;};
Abc方法不存在