原本这是个很简单的问题,但不知道的话,却很难想到。
1.在Javascript中调用后台函数
在这个例子中该方法并不是好的解决方案,在这里只是作为示例。
a. 添加一个submit按钮,如代码第18行,其onserverclick事件等于服务器端事件SetValue
b.在后台代码中添加SetValue方法,注意其是一个protected方法,不能为private。
c.在应用中,通过调用submit按钮的click()事件在调用SetValue方法。在示例中是在button的onclick事件中调用。
客户端代码:

 1

服务器端代码:

1Javascript调用服务器端事件protected void SetValue(object sender, System.EventArgs e)
2Javascript调用服务器端事件        {
3Javascript调用服务器端事件            this.txtSetValue.Value = "The value from server!";
4Javascript调用服务器端事件        }


2.在控件中调用后台函数
该方法在上例中其实已经提到,也是我们很常用的一种方法。
a.在控件的onserverclick,或者onserverchange事件中直接调用服务器端事件,忘了提醒,该事件不要在服务器端声明委托。如上例中的18行就是用的该方法。

3.常规用法。
常规用法就是在服务器端声明委托。如:

1Javascript调用服务器端事件/// <summary>
2Javascript调用服务器端事件        /// 设计器支持所需的方法 - 不要使用代码编辑器修改
3Javascript调用服务器端事件        /// 此方法的内容。
4Javascript调用服务器端事件        /// </summary>
5Javascript调用服务器端事件        private void InitializeComponent()
6Javascript调用服务器端事件        {    
7Javascript调用服务器端事件            this.smtSetValue.ServerClick += new System.EventHandler(this.smtSetValue_ServerClick);
8Javascript调用服务器端事件
9Javascript调用服务器端事件        }

完!

相关文章: