3.3 动态内容
为了从HTML的静态世界转到ASP.NET的动态世界,知道动态内容的含义是什么是很重要的。当单击Web页面上表单上的按钮时,期望发生某些事情——并且多数时候(如果页面编码正确)确实发生了某些事情。通过单击按钮可以提交订购许多CD的表单。也可以选择页面上的一个菜单项——例如,从Wrox United Web站点选择一个菜单。与单击Start按钮相似,单击菜单导致菜单内容弹出(如图3-15所示)并且变为可选的。
注意在单击菜单和单击另一个不同的菜单之间没有时间差——页面的响应就如自己的系统一样。为了显示这些项浏览器实际上执行一些本地代码。单击表单上的按钮或超链接,则页面可能花费更长的时间响应。单击页面上的按钮、超链接或者其他相似的元素能使浏览器开始与服务器会话、请求某些东西或者发送一些数据。

图3-15
动态客户端代码和动态服务器端代码
鼠标指针悬停在Wrox United Web站点的菜单上将会运行页面上的一些可能用JavaScript编写的代码,JavaScript是一种大多数浏览器都能理解并运行的编程语言,它用来向用户输入提供快速响应。页面将不会闪烁和刷新(与单击超链接不同),因为当悬停在菜单上时,浏览器已经知道要显示什么。这是一个动态客户端 代码的示例。
当需要更复杂的响应时(例如,在购物站点上提交订单或想要查找特定的商品时),页面把信息提交给Web服务器来处理。在服务器上进行处理的是动态服务器端 代码,这就是在本书课程中将要学习编写的代码。
可以使用很多不同的语言编写服务器端代码,不仅是ASP.NET中所带的VB.NET、C#或其他的.NET语言。可能也曾听过PHP和JSP(Java Server Pages)——这些只是开发人员用来编写服务器端代码的其他语言的两种示例。每种语言都有其长处和弱点,但是很难找到像ASP.NET一样容易使用且功能强大的服务器端技术。
说到在ASP.NET中创建动态页面,构建动态页面的最快方法是把服务器端控件拖放到页面上,设置这些控件的属性,最后编写代码自定义它们的功能。此拖放结构在最新版本的ASP.NET中已经有很大改进,使创建整个站点的结构框架而根本不用编写任何代码成为可能。






