仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 591|回复: 7
打印 上一主题 下一主题

[学习教程] ASP.NET网页编程之基于AJAX手艺的DataGrid控件编程

[复制链接]
跳转到指定楼层
楼主
发表于 2015-1-16 22:37:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
计算机发展到这个时候,很多技术日益成熟,想学好一种技术都是不容易的,当你学会用的时候你对它的很多原理可能很不了解)ajax|datagrid|datagrid控件|编程  简介
  在传统的Web开辟中,每次DataGrid控件添补或更新都响应于一次到服务器的数据回馈。可是,借助于AJAX手艺,我们能够在不举行表单提交(革新)的情形下便可以添补DataGrid控件。
  在本文中,我们经由过程一个复杂示例并借助于一个DropDownList控件的匡助来会商怎样到达这一目标。在这个例子中,我们利用了一个DropDownList控件;一旦改动DropDownList的值,它即用响应的乡村名来添补DataGrid控件,在此过程当中我们奇妙了引进了AJAX手艺。
  既然我们已懂得一些AJAX的基础常识,如今让我们进一步会商这个DataGrid示例程序。在本例中,我们次要注释怎样从客户端发送哀求,怎样处置哀求,和怎样运转客户端剧本来显现DataGrid中的数据。
  示例使用程序布局
  在本例中,我们共创建了两个Web表单(AjaxServer.aspx和DataGridEx.aspx),一个JavaScript文件和一个层叠式样表文件(CSS)。文件AjaxServer.aspx卖力服务器端功效(一旦选择即前往作者了局),而文件DataGridEx.aspx卖力利用AJAX手艺显现前往的了局。上面让我们作进一步剖析。
  1.AjaxServer.aspx
  这个页面以选择的“City”作为哀求。它取回一切的属于该乡村的作者而且把一个XML呼应字符串前往到客户端(见列表1)。
  列表1―AjaxSever.aspx.vb代码
  1. PrivateSubPage_Load(ByValsenderAsSystem.Object,
  2. ByValeAsSystem.EventArgs)HandlesMyBase.Load
  3. IfNotIsPostBackThen
  4. choice=Request("Choice")
  5. Ifchoice.Length>0Then
  6. Response.Clear()
  7. Ifchoice="AllCities"Then
  8. DA=NewSqlDataAdapter("select*fromauthors",con)
  9. Else
  10. DA=NewSqlDataAdapter("select*fromauthorswherecity="&Request("Choice")&"",con)
  11. EndIf
  12. DA.Fill(ds)
  13. chString=ds.GetXml()
  14. Response.Clear()
  15. Response.ContentType="text/xml"
  16. Response.Write(chString)
  17. Response.End()
  18. Else
  19. Response.Clear()
  20. Response.End()
  21. EndIf
  22. Else
  23. Response.Clear()
  24. Response.End()
  25. EndIf
  26. EndSub
复制代码
  2.DataGridEx.aspx
  这个页面入手下手把一切的作者信息显现在DataGrid中。每当DropDownList中产生变更,它利用JavaScript文件取回内容并预以显现。注重:为了显现以后正运转的历程的情况,我们在此利用了一个面板。该面板具有一个GIF图象(入手下手不成见)―在处置产生于服务器端时它被显现,而一旦处置停止即变成不成见的(见)。我们如许做的基本目标就是为了让用户具体懂得以后正运转的历程情形。



.DatagridEx.aspx的快照(为了显现历程)

  3.JavaScript文件
  这个文件卖力全部历程的处置哀求和呼应。这个文件将天生XMLHttpRequest而且把选择的乡村发送到AjaxServer.aspx页面。一旦前往,它失掉一个相似于数据库表的输入了局―该了局将被添补到DataGrid中。

  一入手下手,上图面板中的“历程”图象是不成见的。当DropDownList选择产生变更时,“历程”图象就显现出来,直到用前往的了局添补DataGrid为止(见列表2)。该DataGrid被前往的数据添补―经由过程利用一个复杂的for轮回来读取前往的内容(见列表3)。
  列表2―历程形态
  1. functionFetchDGContents(){
  2. varselecteditem=document.Form1.ddlcity.value;
  3. imgtbl.style.visibility=visible;
  4. varrequestUrl=AjaxServerPageName+"?Choice="+
  5. encodeURIComponent(selecteditem);
  6. CreateXmlReq();
  7. if(XmlReq){
  8. XmlReq.onreadystatechange=HandleResponse;
  9. XmlReq.open("GET",requestUrl,true);
  10. XmlReq.send();
  11. }
  12. }
复制代码
  列表3―利用收到的呼应数据添补DataGrid控件
  1. functionFillTable(scity){
  2. varauth=scity.getElementsByTagName(Authors);
  3. vartbl=document.getElementById(dgauthors).getElementsByTagName("tbody")[0];
  4. for(vari=0;i
  5. {
  6. varrow=document.createElement("TR");
  7. row.setAttribute("className","text");
  8. row.setAttribute("bgColor","#ECECEC");
  9. for(varj=0;j
  10. {
  11. varcell=document.createElement("TD");
  12. cell.innerHTML=auth.context.childNodes(i).childNodes(j).text;
  13. row.appendChild(cell);
  14. }
  15. tbl.appendChild(row)
  16. }
  17. }
复制代码
  运转示例代码
  你能够下载本文响应的示例源码举行剖析。起首,创立一个定名为MyAjax的假造目次,然后把解压后的文件复制到该目次下便可。最初,翻开VisualStudio.NET办理计划资本办理器并按F5键运转程序,并察看了局。
  总结
  本文经由过程一个复杂的例子―利用AJAX手艺操纵DataGrid控件―来显现服务器挪用的处置形态。这是把AJAX手艺使用于.NET平台Web开辟的又一复杂示例。
c++是语言,其实C++和java的应用范围根本就不一样的。在java应用的领域内,c++是不合适的。所以微软才搞了C#和Java对抗。
只想知道 该用户已被删除
沙发
发表于 2015-1-19 19:36:28 | 只看该作者
CGI程序在运行的时候,首先是客户向服务器上的CGI程序发送一个请求,服务器接收到客户的请求后,就会打开一个新的Process(进程)来执行CGI程序,处理客户的请求。CGI程序最后将执行的结果(HTML页面代码)传回给客户。
灵魂腐蚀 该用户已被删除
板凳
发表于 2015-1-25 09:36:41 | 只看该作者
这也就是最近几年来随着各种新的后台技术的诞生,CGI应用在Internet上越来越少的原因。CGI方式不适合大访问量的应用。
兰色精灵 该用户已被删除
地板
发表于 2015-2-2 20:14:07 | 只看该作者
ASP.net的服务器,要求安装一个.net环境,当然我这里指的是windows系统,顺便点一下,.net只能放在windows环境里来运行。Asp.net1.1的就装Framework1.1,Asp.net2.0的就装Framework2.0。
活着的死人 该用户已被删除
5#
发表于 2015-2-8 04:52:58 | 只看该作者
ASP是把代码交给VBScript解释器或Jscript解释器来解释,当然速度没有编译过的程序快了。
深爱那片海 该用户已被删除
6#
发表于 2015-2-24 06:07:41 | 只看该作者
逐步缩小出错代码段的范围,最终确定错误代码的位置。
简单生活 该用户已被删除
7#
发表于 2015-3-7 11:41:43 | 只看该作者
可以看作是VC和Java的混合体吧,尽管MS自己讲C#内核中更多的象VC,但实际上我还是认为它和Java更象一些吧。首先它是面向对象的编程语言,而不是一种脚本,所以它具有面向对象编程语言的一切特性。
蒙在股里 该用户已被删除
8#
发表于 2015-3-21 17:15:04 | 只看该作者
那么,ASP.Net有哪些改进呢?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2025-2-24 00:09

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表