第1章 基础知识 1
1.1 Internet简介 2
1.1.1 起源 2
1.1.2 Intemet 2
1.1.3 IP地址 3
1.1.4 域名 3
1.2 万维网 4
1.2.1 起源 4
1.2.2 Web还是Internet 5
1.3 Web浏览器 5
1.4 Web服务器 6
1.4.1 Web服务器操作 7
1.4.2 服务器的一般特性 7
1.4.3 Apache 8
1.4.4 IIS 9
1.5 统一资源定位符 9
1.5.1 URL的格式 9
1.5.2 URL路径 10
1.6 多用途网际邮件扩充协议 11
1.6.1 类型说明 11
1.6.2 实验性文档类型 11
1.7 超文本传输协议 12
1.7.1 请求阶段 12
1.7.2 响应阶段 14
1.8 安全性 15
1.9 Web开发常用工具 16
1.9.1 XHTML概述 17
1.9.2 创建XHTML文档的工具 17
1.9.3 插件和过滤器 18
1.9.4 XML概述 18
1.9.5 JavaScript概述 19
1.9.6 Java概述 19
1.9.7 Perl概述 20
1.9.8 PHP概述 20
1.9.9 Ruby概述 21
1.9.10 Rails概述 21
1.9.11 Ajax概述 21
1.10 本章小结 22
1.11 复习题 23
1.12 练习题 25
第2章 XHTML简介 27
2.1 HTML和XHTML的起源和演变 28
2.1.1 HTML和XHTML的版本 28
2.1.2 HTML与XHTML 29
2.2 基本语法 29
2.3 XHTML文档的标准结构 30
2.4 基本的文本标记 31
2.4.1 段落 31
2.4.2 换行 33
2.4.3 保留空白字符 33
2.4.4 标题 34
2.4.5 文本块引用 35
2.4.6 字体样式与大小 36
2.4.7 字符实体 37
2.4.8 水平线 37
2.4.9 meta元素 38
2.5 图片 38
2.5.1 图片格式 38
2.5.2 <img/>标签 39
2.5.3 XHTML文档的验证 41
2.6 超链接 42
2.6.1 链接 43
2.6.2 位于文档内部的目标 45
2.6.3 使用链接 45
2.7 列表 45
2.7.1 无序列表 45
2.7.2 有序列表 46
2.7.3 定义列表 49
2.8 表格 50
2.8.1 基本的表格标签 50
2.8.2 属性rowspan与colspan 52
2.8.3 属性align与valign 54
2.8.4 属性cellpadding与cellspacing 55
2.8.5 表格分块 56
2.9 表单 56
2.9.1 <form>标签 56
2.9.2 <input>标签 57
2.9.3 <select>标签 60
2.9.4 <textarea>标签 62
2.9.5 动作按钮 63
2.9.6 一个完整的表单示例 63
2.10 框架 66
2.10.1 框架集 67
2.10.2 框架 68
2.11 HTML与XHTML之间的语法差异 71
2.12 本章小结 72
2.13 复习题 74
2.14 练习题 75
第3章 层叠样式表 77
3.1 简介 78
3.2 样式表的层次 78
3.3 样式说明格式 80
3.4 选择器格式 81
3.4.1 简单的选择器格式 81
3.4.2 类选择器 81
3.4.3 类属选择器 82
3.4.4 id选择器 82
3.4.5 通配选择器 82
3.4.6 伪类 82
3.5 属性值的格式 83
3.6 字体属性 85
3.6.1 字体族 85
3.6.2 字体大小 86
3.6.3 字体变化 86
3.6.4 字体样式 86
3.6.5 字体粗细 86
3.6.6 简写字体属性 86
3.6.7 文本装饰 89
3.7 列表属性 90
3.8 颜色 93
3.8.1 颜色组 93
3.8.2 颜色属性 93
3.9 文本对齐 94
3.10 盒模型 96
3.10.1 边框 96
3.10.2 内边距和外边距 98
3.11 背景图片 101
3.12 <span>标签和<div>标签 102
3.13 冲突解决方案 103
3.14 本章小结 104
3.15 复习题 106
3.16 练习题 106
第4章 JavaScript基础知识 109
4.1 JavaScript概述 110
4.1.1 起源 110
4.1.2 JavaScript与Java 110
4.1.3 JavaScript的用途 111
4.1.4 事件驱动的计算 111
4.1.5 浏览器和XHTML/JavaScript文档 112
4.2 面向对象和JavaScript 112
4.3 一般的语法特征 113
4.4 原始数据、操作和表达式 115
4.4.1 原始数据类型 115
4.4.2 数值型和字符串字面量 116
4.4.3 其他原始类型 116
4.4.4 声明变量 117
4.4.5 数值操作符 117
4.4.6 Math对象 118
4.4.7 Number对象 118
4.4.8 字符串连接操作符 119
4.4.9 隐式类型转换 119
4.4.10 显式类型转换 120
4.4.11 String属性和方法 121
4.4.12 typeof操作符 122
4.4.13 赋值语句 122
4.4.14 Date对象 122
4.5 屏幕输出和键盘输入 123
4.6 控制语句 126
4.6.1 控制表达式 126
4.6.2 选择语句 128
4.6.3 switch语句 128
4.6.4 循环语句 130
4.7 创建和修改对象 132
4.8 数组 134
4.8.1 创建Array对象 134
4.8.2 Array对象的特征 134
4.8.3 Array方法 135
4.9 函数 137
4.9.1 基础知识 137
4.9.2 局部变量 138
4.9.3 参数 139
4.9.4 深入理解sort方法 141
4.10 示例一 141
4.11 构造函数 142
4.12 利用正则表达式进行模式匹配 143
4.12.1 字符和字符类模式 144
4.12.2 锚 146
4.12.3 模式修饰符 146
4.12.4 String对象中的其他模式匹配方法 146
4.13 示例二 147
4.14 脚本中的错误 148
4.15 本章小结 150
4.16 复习题 151
4.17 练习题 153
第55章 JavaScript与XHTML文档 155
5.1 JavaScript的执行环境 156
5.2 文档对象模型 156
5.3 在JavaScript中访问元素 158
5.4 事件与事件处理 160
5.4.1 事件处理的基本概念 160
5.4.2 事件、属性和标签 161
5.5 处理主体元素的事件 164
5.6 处理按钮元素的事件 165
5.7 处理文本框和密码框元素的事件 170
5.7.1 focus事件 170
5.7.2 验证表单输入 172
5.8 DOM 2事件模型 177
5.8.1 事件传播 178
5.8.2 事件处理程序的注册 179
5.8.3 DOM 2事件模型示例 180
5.9 navigator对象 182
5.10 DOM树的遍历和修改 183
5.10.1 DOM树遍历 183
5.10.2 DOM树修改 184
5.11 本章小结 184
5.12 复习题 185
5.13 练习题 185
第6章 利用JavaScript开发动态文档 187
6.1 简介 188
6.2 元素定位 188
6.2.1 绝对定位 188
6.2.2 相对定位 191
6.2.3 静态定位 192
6.3 移动元素 192
6.4 元素可见性 195
6.5 修改颜色和字体 196
6.5.1 修改颜色 196
6.5.2 修改字体 198
6.6 动态修改内容 199
6.7 堆叠元素 201
6.8 定位鼠标光标 204
6.9 响应鼠标单击 206
6.10 缓慢移动元素 207
6.11 拖放元素 210
6.12 本章小结 214
6.13 复习题 214
6.14 练习题 215
第7章 XML简介 217
7.1 简介 218
7.2 XML语法 219
7.3 XML文档结构 221
7.4 文档类型定义 223
7.4.1 元素声明 223
7.4.2 属性声明 224
7.4.3 实体声明 225
7.4.4 一个DTD的示例 226
7.4.5 内部和外部DTD 227
7.5 命名空间 228
7.6 XML架构 229
7.6.1 架构的基本原理 230
7.6.2 架构的定义 230
7.6.3 定义架构实例 231
7.6.4 数据类型概述 232
7.6.5 简单类型 233
7.6.6 复杂类型 234
7.6.7 架构实例的验证 236
7.7 显示没有格式化的XML文档 237
7.8 通过CSS显示XML文档 238
7.9 XSLT样式表 239
7.9.1 XSLT概述 239
7.9.2 用于表现的XSL转换 240
7.10 XML处理器 246
7.10.1 XML处理器的用途 246
7.10.2 SAX方式 247
7.10.3 DOM方式 247
7.11 Web服务 248
7.12 本章小结 249
7.13 复习题 250
7.14 练习题 251
第8章 Perl语言基础 253
8.1 Perl的起源与用途 254
8.2 标量及其操作 254
8.2.1 数值与字符串字面量 254
8.2.2 标量变量 255
8.2.3 数值操作符 256
8.2.4 字符串操作符 257
8.2.5 字符串函数 257
8.3 赋值语句与基本的输入输出 258
8.3.1 赋值语句 258
8.3.2 键盘输入 258
8.3.3 屏幕输出 259
8.4 控制语句 260
8.4.1 控制表达式 260
8.4.2 选择及循环语句 261
8.5 数组基础 263
8.5.1 列表字面量 263
8.5.2 数组 263
8.5.3 foreach语句 265
8.5.4 内置的数组函数 266
8.5.5 内置的列表函数 266
8.5.6 示例 267
8.6 散列 267
8.7 引用 269
8.8 函数 269
8.8.1 基础 269
8.8.2 局部变量 270
8.8.3 参数 270
8.8.4 深入理解sort函数 271
8.8.5 示例 272
8.9 模式匹配 273
8.9.1 模式匹配的基础 273
8.9.2 存储匹配 274
8.9.3 替换 275
8.9.4 直转操作符 275
8.10 文件输入输出 276
8.11 示例 277
8.12 本章小结 279
8.13 复习题 280
8.14 练习题 281
第9章 使用Perl语言编写CGI程序 283
9.1 通用网关接口技术 284
9.2 CGI连接 285
9.3 查询字符串的格式 287
9.4 CGI.pm模块 288
9.4.1 常用的CGI.pm函数 289
9.4.2 一个完整的表单示例 291
9.5 调查表示例 296
9.6 Cookie简介 305
9.7 本章小结 309
9.8 复习题 310
9.9 练习题 310
第10章 Servlet与JSP 313
10.1 servlet概述 314
10.2 servlet详解 314
10.3 调查表示例 317
10.4 在客户端存储信息 323
10.4.1 cookie 323
10.4.2 servlet对cookie的支持 323
10.4.3 示例 324
10.4.4 会话跟踪 330
10.5 JSP 334
10.5.1 开发JSP的动机 334
10.5.2 JSP文档 334
10.5.3 脚本段 336
10.5.4 表达式语言 339
10.5.5 JSTL中用于控制的动作元素 341
10.6 本章小结 345
10.7 复习题 346
10.8 练习题 347
第11章 PHP简介 349
11.1 PHP的起源和用途 350
11.2 PHP概述 350
11.3 基本语法特征 351
11.4 原始类型、操作和表达式 352
11.4.1 变量 352
11.4.2 整数类型 352
11.4.3 双精度类型 353
11.4.4 字符串类型 353
11.4.5 布尔类型 353
11.4.6 算术运算符和表达式 354
11.4.7 字符串操作 354
11.4.8 标量类型转换 355
11.4.9 赋值操作符 356
11.5 输出 356
11.6 控制语句 358
11.6.1 关系操作符 358
11.6.2 布尔操作符 358
11.6.3 选择语句 358
11.6.4 循环语句 359
11.6.5 示例 360
11.7 数组 361
11.7.1 创建数组 361
11.7.2 访问数组元素 362
11.7.3 数组处理函数 362
11.7.4 数组元素的按序访问 364
11.7.5 数组排序 366
11.8 函数 367
11.8.1 函数的基本特征 367
11.8.2 参数 368
11.8.3 变量的作用域 369
11.8.4 变量的生命周期 370
11.9 模式匹配 370
11.10 表单处理 372
11.11 文件处理 378
11.11.1 文件的打开和关闭 378
11.11.2 文件读取 379
11.11.3 文件写入操作 380
11.11.4 文件加锁 380
11.12 Cookie 380
11.12.1 cookie简介 380
11.12.2 PHP对cookie的支持 381
11.13 会话跟踪 382
11.14 本章小结 382
11.15 复习题 383
11.16 练习题 385
第12章 ASP.NET简介 387
12.1 .NET Framework概述 388
12.1.1 背景 388
12.1.2 .NET语言 388
12.1.3 公共语言运行时 388
12.1.4 公共语言架构 389
12.2 C#简介 390
12.2.1 起源 390
12.2.2 原始类型和表达式 390
12.2.3 数据结构 391
12.2.4 控制语句 392
12.2.5 类、方法和结构 393
12.2.6 属性 393
12.2.7 委托 394
12.2.8 程序结构 394
12.2.9 程序的文件存储 395
12.3 ASPNET简介 396
12.3.1 基本原理 396
12.3.2 ASP.NET文档 398
12.3.3 后台代码文件 400
12.4 ASP.NET控件 401
12.4.1 HTML控件 401
12.4.2 简单的ASP.NET文档的生命周期 403
12.4.3 页面级事件 406
12.4.4 控制事件 406
12.4.5 Web控件 407
12.4.6 由代码产生控件元素 409
12.4.7 控件的响应输出 409
12.4.8 示例 410
12.4.9 验证控件 411
12.5 Web服务 414
12.5.1 构建Web服务 414
12.5.2 传播Web服务 417
12.6 本章小结 417
12.7 复习题 418
12.8 练习题 419
第13章 基于Web的数据库访问 421
13.1 关系数据库 422
13.2 结构化查询语言简介 424
13.2.1 SELECT命令 425
13.2.2 连接 425
13.2.3 INSERT命令 426
13.2.4 UPDATE命令 427
13.2.5 DELETE命令 427
13.2.6 DROP命令 427
13.2.7 CREATE TABLE命令 427
13.3 数据库访问的体系结构 428
13.3.1 客户/服务器体系结构 428
13.3.2 Microsoft Access体系结构 429
13.3.3 Perl DBI/DBD体系结构 429
13.3.4 PHP和数据库访问 429
13.3.5 Java JDBC体系结构 429
13.4 MySQL数据库系统 430
13.5 使用Perl和MySQL实现数据库访问 432
13.5.1 DBI模块 433
13.5.2 示例 434
13.6 使用PHP和MySQL实现数据库访问 436
13.6.1 特殊字符的潜在问题 436
13.6.2 连接MySQL并选择数据库 437
13.6.3 请求MySQL操作 437
13.6.4 PHP/MySQL示例 438
13.7 使用JDBC和MySQL实现数据库访问 443
13.7.1 JDBC和MySQL 443
13.7.2 元数据 446
13.7.3 示例 447
13.8 本章小结 450
13.9 复习题 451
13.10 练习题 452
第14章 Ruby简介 453
14.1 Ruby的起源与用途 454
14.2 标量类型及其操作 454
14.2.1 数值与字符串字面量 454
14.2.2 变量和赋值语句 455
14.2.3 数值操作符 456
14.2.4 String的方法 457
14.3 简单的输入输出 461
14.3.1 屏幕输出 461
14.3.2 键盘输入 461
14.4 控制语句 463
14.4.1 控制表达式 463
14.4.2 选择语句和循环语句 464
14.5 数组基础 467
14.5.1 for-in语句 468
14.5.2 数组和列表的内置方法 469
14.5.3 示例 471
14.6 散列 472
14.7 方法 473
14.7.1 基础知识 473
14.7.2 局部变量 474
14.7.3 参数 474
14.8 类 476
14.8.1 类的基础知识 477
14.8.2 访问控制 478
14.8.3 继承 480
14.9 代码块和迭代器 481
14.10 模式匹配 483
14.10.1 模式匹配的基础知识 483
14.10.2 存储匹配 484
14.10.3 替换 484
14.11 本章小结 485
14.12 复习题 486
14.13 练习题 486
第15章 Rails简介 487
15.1 Rails概述 488
15.2 文档请求 489
15.2.1 静态文档Hello World 489
15.2.2 动态文档 493
15.3 处理表单 495
15.3.1 设置应用程序 495
15.3.2 控制器和视图 496
15.4 需要访问数据库的Rails应用程序 500
15.4.1 构建数据库 500
15.4.2 构建应用程序 504
15.5 布局 509
15.6 本章小结 510
15.7 复习题 511
15.8 练习题 512
第16章 Ajax简介 513
16.1 Ajax概述 514
16.2 Ajax基础知识 516
16.2.1 应用程序 516
16.2.2 表单文档 516
16.2.3 请求阶段 518
16.2.4 响应文档 519
16.2.5 接收器阶段 520
16.2.6 跨浏览器支持 522
16.3 采用Ajax技术的Rails 523
16.3.1 初始的表单文档 524
16.3.2 触发Ajax 525
16.3.3 控制器 527
16.4 本章小结 529
16.5 复习题 529
16.6 练习题 530
附录A Java简介 531
附录B 颜色名及其十六进制值 545
附录C Java Applet 549