如何给服务器控件ImageButton添加一个可以回调的双击事件? 各位高手:现页面有个服务器控件ImageButton1,如何给它加个双击事件,使其能够调用CS文件的ImageButton1_ondblclick函数?如果不用Ajax还有没有其他办法? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 没记错的话ImageButton 好像只有Click 事件吧(服务器端) cs文件中不可能有dblclick事件.只有click事件,客户端倒是有双击事件,但双击前必须先执行click事件. 设置ImageButton的OnClientClick为一个Javascript函数,通过javascript函数进行回调。 asp.net夜话之五:Page类和回调技术 在今天我主要要介绍的有如下知识点:Page类介绍:介绍单页模型和页面、代码分离模型。Page的生命周期:介绍Page类个各个生命周期还有Page生命周期内的一些相关事件。IsPostBack属性:用于判断当前页面是否是响应客户端回发。ClientScriptManager类:用于动态向当前页面注册javascript脚本的类。回调技术(CallBack):通过回调实现在客户端调用服务器端方法而不用提交整个表单。http://blog.csdn.net/zhoufoxcn/archive/2008/09/28/2990318.aspx 回调技术(CallBack)在asp.net中客户端与服务器端的交互默认都是整页面提交,此时客户端将当前页面表单中的数据(包括一些自动生成的隐藏域)都提交到服务器端,服务器重新实例化一个当前页面类的实例响应这个请求,然后将整个页面的内容重新发送到客户端,这种处理方式对运行结果没什么影响,不过这种方式加重了网络的数据传输负担、加大了服务器的工作压力,并且用户还需要等待最终处理结果。假如是我们希望有这么一个功能,当用户填写完用户名之后就检查服务器数据库里是否已存在该用户名,如果存在就给出已经存在此用户名的提示,如果不存在就提示用户此用户名可用,对于这种情况其实只需要传递一个用户名作为参数即可,上面的做法却需要提交整个表单,有点小题大做。解决上面的问题的办法目前主流做法有三种:纯javascript实现、微软Ajax类库实现还有用AjaxPro实现。后两种做法在稍后的文章中会讲到,这里我讲另外一种实现:通过回调技术。创建实现回调技术的网页与普通asp.net网页类似,只不过还需要做以下特殊工作:(1)让当前页面实现ICallbackEventHandler接口,这个接口定义了两个方法:string GetCallbackResult ()方法和void RaiseCallbackEvent (string eventArgument)方法。其中GetCallbackResult ()方法的作用是返回以控件为目标的回调事件的结果,RaiseCallbackEvent()方法的作用是处理以控件为目标的回调事件。(2)为当前页提供三个javascript客户端脚本函数。一个javascript函数用于执行对服务器的实际请求,在这个函数中可以提供一个字符串类型的参数发送到服务器端;另一个javascript函数用于接收服务器端方法的执行后返回的字符串类型结果,并处理这个结果;还有一个是执行对服务器请求的帮助函数,在服务器代码中通过GetCallbackEventReference()方法获取这个方法的引用时由asp.net自动生成这个函数。 关于gridview分页顺便sanfen 关于导入邮箱联系人 一个简单的JS求助拉啊 在IE里面调用本地的(客户端的,不是服务器端)Access数据库 用户控件的属性传值问题,大恩不言谢高分跪拜 求一算法 判断数组是否有重复的元素? 高分求助!有关在网页上显示WORD文档的内容 控制整个页面的TextBox,把属性设置为ReadOnly = true。一般的页面我实现了,继承母板页的实现不了~~在线等待结帖! 如何遍历WEB控件? checkbox是否选中的问题 使用updatePanel报错 “不允许进行筛选”!
在今天我主要要介绍的有如下知识点:Page类介绍:介绍单页模型和页面、代码分离模型。Page的生命周期:介绍Page类个各个生命周期还有Page生命周期内的一些相关事件。IsPostBack属性:用于判断当前页面是否是响应客户端回发。ClientScriptManager类:用于动态向当前页面注册javascript脚本的类。回调技术(CallBack):通过回调实现在客户端调用服务器端方法而不用提交整个表单。
http://blog.csdn.net/zhoufoxcn/archive/2008/09/28/2990318.aspx
在asp.net中客户端与服务器端的交互默认都是整页面提交,此时客户端将当前页面表单中的数据(包括一些自动生成的隐藏域)都提交到服务器端,服务器重新实例化一个当前页面类的实例响应这个请求,然后将整个页面的内容重新发送到客户端,这种处理方式对运行结果没什么影响,不过这种方式加重了网络的数据传输负担、加大了服务器的工作压力,并且用户还需要等待最终处理结果。假如是我们希望有这么一个功能,当用户填写完用户名之后就检查服务器数据库里是否已存在该用户名,如果存在就给出已经存在此用户名的提示,如果不存在就提示用户此用户名可用,对于这种情况其实只需要传递一个用户名作为参数即可,上面的做法却需要提交整个表单,有点小题大做。解决上面的问题的办法目前主流做法有三种:纯javascript实现、微软Ajax类库实现还有用AjaxPro实现。后两种做法在稍后的文章中会讲到,这里我讲另外一种实现:通过回调技术。
创建实现回调技术的网页与普通asp.net网页类似,只不过还需要做以下特殊工作:
(1)让当前页面实现ICallbackEventHandler接口,这个接口定义了两个方法:string GetCallbackResult ()方法和void RaiseCallbackEvent (string eventArgument)方法。其中GetCallbackResult ()方法的作用是返回以控件为目标的回调事件的结果,RaiseCallbackEvent()方法的作用是处理以控件为目标的回调事件。
(2)为当前页提供三个javascript客户端脚本函数。一个javascript函数用于执行对服务器的实际请求,在这个函数中可以提供一个字符串类型的参数发送到服务器端;另一个javascript函数用于接收服务器端方法的执行后返回的字符串类型结果,并处理这个结果;还有一个是执行对服务器请求的帮助函数,在服务器代码中通过GetCallbackEventReference()方法获取这个方法的引用时由asp.net自动生成这个函数。