版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、A回调技术Callback学习笔记_ .aspx: 001 % Page Language=C# AutoEventWireup=true CodeFile=Default.aspx.cs Inherits=_Default % 002 003 !DOCTYPE html PUBLIC -/W3C/DTD XHTML 1.0 Transitional/EN l1/DTD/xhtml1-transitional.dtd 004 html xmlns=l 005 head runat=server 006 title无标题页/title 007 008 script type=text/javas
2、cript 009 010 /向服务器传递参数 011 function DoSearch() 012 var firstName=document.getElementById(TextBox1).value; 013 CallServer(firstName,); 014 015 016 /得到服务器的数据 017 function ReceiveServerData(txtUserInfo) 018 Results.innerHTML=txtUserInfo; 019 020 021 /设置每1秒执行一次 022 setInterval(DoSearch(),1000); 023 /sc
3、ript 024 025 /head 026 body 027 form id=form1 runat=server 028 div 029 姓名:asp:TextBox ID=TextBox1 runat=server/asp:TextBox 030 br / 031 span id=Results style= width:500px;/span 032 /div 033 /form 034 /body 035 /html 036 /code 037 .aspx.cs 038 code 039 using System; 040 using System.Collections; 041
4、using System.Configuration; 042 using System.Data; 043 using System.Web; 044 using System.Web.Security; 045 using System.Web.UI; 046 using System.Web.UI.HtmlControls; 047 using System.Web.UI.WebControls; 048 using System.Web.UI.WebControls.WebParts; 049 using System.Data.SqlClient; 050 051 public pa
5、rtial class _Default : System.Web.UI.Page, ICallbackEventHandler 052 053 protected string txtUserInfo; 054 055 056 protected void Page_Load(object sender, EventArgs e) 057 058 /猎取一个对客户端函数的引用 059 string cbReference = Page.ClientScript.GetCallbackEventReference(this, arg, ReceiveServerData, context);
6、060 /动态注册回调函数 061 string callbackScript = function CallServer(arg,context) + + cbReference + ; 062 /引发callbackScript 063 Page.ClientScript.RegisterStartupScript(this.GetType(), CallServer, callbackScript, true); 064 065 066 /引发Callback大事处理 067 public void RaiseCallbackEvent(string txtFirstName) 068
7、069 if (txtFirstName != null) 070 071 String connString = System.Configuration.ConfigurationManager.ConnectionStringssqlserver2021.ToString(); 072 073 SqlConnection conn = new SqlConnection(connString); 074 075 conn.Open(); 076 077 SqlCommand comm = new SqlCommand(select * from zzx where name=name,
8、conn); 078 079 comm.Parameters.Add(name, SqlDbType.VarChar).Value = txtFirstName; 080 081 SqlDataReader reader = comm.ExecuteReader(CommandBehavior.CloseConnection); 082 if (reader.Read() 083 084 txtUserInfo = 员工编号: + readerid.ToString() + br; 085 txtUserInfo += 员工姓名: + readername.ToString() + br; 0
9、86 txtUserInfo += 地址: + readeraddress.ToString() + br; 087 txtUserInfo += 服务器查询时间: + DateTime.Now.ToString(); 088 089 else 090 091 if (string.IsNullOrEmpty(txtFirstName) 092 093 txtUserInfo = 请输入姓名; 094 095 else 096 097 txtUserInfo = 查无此人; 098 099 100 101 comm.Dispose(); 102 reader.Dispose(); 103 co
10、nn.Dispose(); 104 105 106 107 /得到回调的结果,返回给客户端 108 public string GetCallbackResult() 109 110 return txtUserInfo; 111 112 113 114 简化版(偷懒一下): 01 % Page Language=C# AutoEventWireup=true CodeFile=Default.aspx.cs Inherits=_Default % 02 03 !DOCTYPE html PUBLIC -/W3C/DTD XHTML 1.0 Transitional/EN l1/DTD/xht
11、ml1-transitional.dtd 04 html xmlns=l 05 head runat=server 06 title无标题页/title 07 08 script type=text/javascript 09 function OnCallBack(txtUserInfo,context) 10 Results.innerHTML=txtUserInfo; 11 12 /script 13 14 /head 15 body 16 form id=form1 runat=server 17 div 18 姓名:asp:TextBox ID=TextBox1 runat=serv
12、er/asp:TextBox 19 input id=Button2 type=button value=button 20 onclick=%=Page.ClientScript.GetCallbackEventReference(this, document.getElementById(TextBox1).value, OnCallBack,null)% / 21 br / 22 span id=Results style=pink; width: 500;/span 23 /div 24 /form 25 /body 26 /html 27 .aspx.cs 28 29 using S
13、ystem; 30 using System.Collections; 31 using System.Configuration; 32 using System.Data; 33 using System.Web; 34 using System.Web.Security; 35 using System.Web.UI; 36 using System.Web.UI.HtmlControls; 37 using System.Web.UI.WebControls; 38 using System.Web.UI.WebControls.WebParts; 39 using System.Da
14、ta.SqlClient; 40 using System.Text; 41 public partial class _Default : System.Web.UI.Page, ICallbackEventHandler 42 43 protected StringBuilder txtUserInfo; 44 45 protected void Page_Load(object sender, EventArgs e) 46 47 48 49 50 public string GetCallbackResult() 51 52 return txtUserInfo.ToString();
15、 53 54 55 public void RaiseCallbackEvent(string txtFirstName) 56 57 txtUserInfo = new StringBuilder(); 58 String connString = ConfigurationManager.ConnectionStringssqlserver2021.ToString(); 59 SqlConnection conn = new SqlConnection(connString); 60 conn.Open(); 61 SqlCommand comm = new SqlCommand(sel
16、ect * from zzx where name=name, conn); 62 comm.Parameters.Add(name, SqlDbType.VarChar).Value = txtFirstName; 63 SqlDataReader reader = comm.ExecuteReader(CommandBehavior.CloseConnection); 64 if (reader.Read() 65 66 txtUserInfo.Append(员工编号: + readerid.ToString() + br); 67 txtUserInfo.Append(员工姓名: + r
17、eadername.ToString() + br); 68 txtUserInfo.Append(地址: + readeraddress.ToString() + br); 69 txtUserInfo.Append(查询时间: + DateTime.Now.ToString(); 70 71 else 72 73 if (txtFirstName = string.Empty) 74 75 txtUserInfo.Append(请输入姓名); 76 77 else 78 79 txtUserInfo.Append(查无此人); 80 81 reader.Dispose(); 82 comm
18、.Dispose(); 83 conn.Dispose(); 84 85 86 示例3: 01 % Page Language=C# AutoEventWireup=true CodeFile=Default3.aspx.cs Inherits=Default3 % 02 03 !DOCTYPE html PUBLIC -/W3C/DTD XHTML 1.0 Transitional/EN l1/DTD/xhtml1-transitional.dtd 04 05 html xmlns=l 06 head runat=server 07 title无标题页/title 08 script typ
19、e=text/javascript 09 /客户端执行的方法 10 /下面的方法是接收并处理服务器方法返回的结果 11 function Success(args,context) 12 message.innerHTML=args; 13 14 15 /下面的方式是当接收服务器方法处理的结果发生特别时调用的方法 16 function Error() 17 message.innerHTML=发生了特别!; 18 19 /script 20 /head 21 body 22 form id=form1 runat=server 23 div 24 用户名:input type=text id
20、=txtUserName onblur=CallServerMethod(txtUserName.value,null) / 25 span id=message/span 26 br / 27 密码:input type=password size=10 maxlength=20 id=txtPwd / 28 /div 29 /form 30 /body 31 /html 32 code 33 public partial class Default3 : System.Web.UI.Page,ICallbackEventHandler /实现ICallbackEventHandler接口
21、34 35 36 String result = String.Empty; 37 38 protected void Page_Load(object sender, EventArgs e) 39 40 /猎取当前页的ClientScriptManager的引用 41 ClientScriptManager csm = Page.ClientScript; 42 /*猎取回调的引用.会在客户端生成WebForm_DoCallback方法, 43 * 调用它来达到异步调用.这个方法是微软写的方法,会被发送 44 到客户端*/ 45 /*留意这里的Success和Error两个字符串分别是客户端代码中 46 *定义的两个javascript函数*/ 47 /下面的方法最终一个参数的意义:true表示执行异步回调,false标记执行同步回调 48 String reference
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 雨课堂学堂在线学堂云《太极拳基础(南通职业)》单元测试考核答案
- 2026届广东省深圳市名校中考猜题生物试卷含解析
- 医德作风建设课件
- 2026年诊断学第九版押题练习试卷及完整答案详解【夺冠】
- 2026年山东医学技术理论-通关题库及参考答案详解(研优卷)
- 2026年河北省医师考核考前冲刺测试卷附参考答案详解【综合卷】
- 双鸭山市(2025年)辅警考试真题及答案
- 2025年急救理论知识考试参考题库(带答案)
- (2025年)汽车生产线操作工汽车焊装工练习题含参考答案解析
- (2025年)福建省教师招聘考试《教育综合知识》真题及答案
- 2026年河南省漯河市重点学校小升初英语考试真题试卷(+答案)
- 餐饮服务标准与操作手册
- 隐私保护技术发展现状与趋势分析
- 2026年及未来5年市场数据中国剑麻行业发展运行现状及发展趋势预测报告
- 中国皮肤激光治疗指南(2025版)
- 兵团事业编考试题库2026
- 全国税务机关信访工作规则
- 2025年郑州信息科技职业学院单招职业技能测试题库附答案解析
- 武汉城投公司笔试题库
- 2026年全国硕士研究生招生考试管理类联考综合能力试卷及答案
- 水土保持工程调查与勘测标准
评论
0/150
提交评论