1. 建立列表
1.无序列表:列表项目作为一个整体,与上下文各有一段空白
格式为:
ul和 li的属性:type=disc,circle,square
ul 的属性设置到,LI的属性设置到
符号类型>
…
2.有序列表:带序号的列表
格式为:符号类型>
…
type类型: 1, A, a, I, I
3. 定义列表标记: 具有交互凹进的特点
1. 表的嵌套:分为多个层次,给人很强的层次感
中国古典文学
红楼梦
三国演义
水浒传
西游记
中国近现代文学
阿Q正传
围城
效果:
l 客户端编程语言:在浏览器上编译执行的语言
l 服务器端编程语言:在服务器上编译执行的语言
创建ASP网页,将用VBSCript作为服务器端语言
特点:
1. Vbscript代码写在标记
2. 最好把脚本代码放在head部分中
3. 可以把语句放在说明中执行
对象的行为:
一、document.write()
二、VBScript信息框和输入框函数
Msgbox(信息内容,对话框类型,对话框标题)
例:msg=msgbox(“请确认数据是否正确”,3+48+0,”数据检查”)
Inputbox(信息内容,对话框标题,默认内容)
对话框类型:指定对话框中出现的按纽和图标,一般有三个参数:
表 1 参数1——出现按钮
值 |
常量 |
说明 |
0 |
vbOKOnly |
确定按钮 |
1 |
VbOKCancel |
确定和停止按钮 |
2 |
VbAbortRetryIgnore |
终止、重试和忽略按钮 |
3 |
vbYesNoCancel |
是、否和取消按钮 |
4 |
vbYesNo |
是和否按钮 |
5 |
vbRetryCancel |
重试和取消按钮 |
表 2 参数2——图表类型
值 |
常量 |
说明 |
16 |
VbCritical |
停止图标 |
32 |
VbQuestion |
问号图标 |
48 |
VbExclaimation |
感叹号图标 |
64 |
VbInformation |
信息图标 |
表 3 参数3——默认按钮
值 |
常量 |
说明 |
0 |
VbDefaultButton1 |
一 |
256 |
VbDefaultButton2 |
二 |
512 |
VbDefaultButton3 |
三 |
Msgbox函数的返回值
返回值 |
常量 |
说明 |
1 |
vbOK |
确认按钮 |
2 |
vbCancel |
取消按钮 |
3 |
vbAbort |
终止按钮 |
4 |
vbRetry |
重试按钮 |
5 |
vbIngore |
忽略按钮 |
6 |
vbYes |
是 |
7 |
vbNo |
否 |
dim a(10),共11个元素
dim Mytable(5,10),是二维数组
动态数组:dim Myarray() 括号内不包含数字
redim preserve Myarray(30)
随后使用redim确定数组的每一维的大小,preserve在调整大小的同时保留数组内容
[public/private] const 变量=表达式
public:所有脚本中使用,private:只是一个过程使用
日期和时间包含在俩个井号之间
const cutoffdate=#6-1-97#
运算符
|
乘方 |
A^b |
||||||||||||||||||||||||||||
Mod |
求余 |
A mod b |
||||||||||||||||||||||||||||
\ |
整数除法 |
A\b |
||||||||||||||||||||||||||||
/ |
浮点除法 |
A/b |
||||||||||||||||||||||||||||
<> |
不等与 |
A<>b |
||||||||||||||||||||||||||||
And |
与 |
|
||||||||||||||||||||||||||||
Or |
或 |
|
||||||||||||||||||||||||||||
Not |
非 |
|
||||||||||||||||||||||||||||
Xor |
异或 |
A,b全为真或假时:false |
||||||||||||||||||||||||||||
Equ |
逻辑等价 |
A,b同为真或假时:true |
||||||||||||||||||||||||||||
Imp |
逻辑隐含 |
|
1. 数学运算函数
函数 |
说明 |
函数 |
说明 |
Sin |
|
Log |
Lg |
Cos |
|
Sgn |
数的符号 |
Atn |
Arctan |
Sqr |
平方根 |
Tan |
Tan (x) |
Int |
不大于给定数的最大整数 |
Abs |
绝对值 |
Fix |
返回数的整数部分 |
Exp |
E的指定次幂 |
|
|
2. 字符串函数
函数 |
说明 |
函数 |
说明 |
Ltrim |
|
Instr |
返回字符串在给定字符串中位置 |
Rtrim |
|
Space |
指定数目的空格的字符串 |
Trim |
返回删除空格后的字符串 |
String |
一个字符重复指定次数的字符串 |
Left |
从左开始的指定数目的字符 |
Lcase |
变成小写 |
Right |
从左开始的指定数目的字符 |
Ucase |
变成大写 |
mid |
从指定位置开始的指定数目的字符 |
Len |
长度 |
3. 日期和时间函数
函数 |
说明 |
函数 |
说明 |
Now |
|
Hour |
|
Date |
当前日期 |
Minute |
|
Day |
1~31 |
Second |
|
Weekday |
返回:1~7 |
Timer |
|
Month |
|
Time |
当前时间 |
Year |
|
Weekdayname(int) |
返回星期几 |
4. 随机数函数
函数 |
说明 |
Randomize |
产生随机数种子 |
rnd |
产生0~1 的随机数 |
产生1~10的随机数: rnd*10+1
5. 数据类型转换函数
函数 |
返回子类型 |
函数 |
返回子类型 |
Asc |
Integer |
Clng |
|
Cbool |
Bool |
csng |
Single |
Cbyte |
0~255 |
Chr |
String |
ccur |
Currency(很大) |
Hex |
String |
Cdate |
|
oct |
String |
Cdbl |
Double |
|
|
Cint |
|
|
|
6. 测试函数
函数 |
说明 |
函数 |
说明 |
isarray |
Boolean |
Isdate |
|
isempty |
变量是否已初始化 |
nulll |
表达式是否不包含任何有效数据 |
Isnumeric |
|
isobject |
表达式是否引用了有用对象 |
NULL表示变量不包含有效数据,empty表变量没有初始化
每个语句以回车作为结束
几个语句放在一行:”:”
语句的续行:“-”
If then elseif then else end if
select case <测试条件>
case 表达式,表达式,表达式
语句列
case else
语句列
end select
测试条件是必要参数,是数值或字符表达式
l do while/until [条件]…exit do …. Loop
l do …. Loop while/until [条件] :至少执行一次
l for next I=1 to 5 by step 2 :知道执行次数
….
Exit for
….
Next
l For each <元素> in <名称> ….. next
不知道集合只能感的元素数目
function 有返回值
可将变量放在括号内,就变为表达式,可进行值传递,如:(a)
1.
οnclick=mysub value=”确定”>
1. Window对象
属性: event status(状态栏信息)
注意:event必须表明window对象:window.event. event 对象的常用属性有 altkey, ctrlkey, shiftkey, keycode
方法: close , open(一个新的浏览窗口) , settimeout
settimeout的方法: settimeout(“命令或过程”,毫秒数)
open的方法:
window.open "til.htm",null,"toolbar=no,status=no,channelmod=no" '不加括号
事件: load , unload, resize
例: 函数名)>
2. Document 对象
属性: bgColor, fgColor (页面文本的颜色), cookie, title (浏览器的标题)
方法: clear open(一个新文档) write writeIn
事件: click dblclick keydown keypress keyup mousedown mouseover
mouseout mouseup
例: 函数名)>
3. History 对象
属性: length (访问过的URL的个数)
方法: back : history.back n ; forward , go : history.go n | url
4. Navigator对象
属性: appName(浏览器类型名称), appVersion(版本号),cookieEnabled (是否支持cookie )
方法: javaEnabled :是否支持JAVA语言
5. Location 对象
属性: href (动态切换) : location.href=www.sohu.com
search : 返回URL中嵌入的参数,通过参数实现网页间的信息交互
例: www.some.com/userregeister.exe?user=”yangling” 查找用户,由userregister.exe返回结果
type属性的取值
取值 |
说明 |
Button |
|
Text |
|
Password |
|
Radio |
|
Checkbox |
|
Image |
图象 |
File |
多行文本框 |
Submit |
与form一起使用 |
Reset |
|
hidden |
通用的属性
名称 |
说明 |
Disabled |
是否响应用户事件 |
Style |
内嵌样式 |
Title |
鼠标在控件上的提示信息 |
Value |
|
通用的事件
focus ,blur, click dblclick mouseover mousemove mouseover mousedown
mouseup keypress keydown keyup
event 常用属性
名称 |
说明 |
AltKey |
返回alt是否按下 |
CtrlKey |
|
Shiftkey |
|
keycode |
返回事件发生时的按键 |
Button 控件
属性
1. Readonly 可接受焦点,但不能使用
2. Outertext 将控件动态更新为字符串
Button.outertext=”欢迎进入聊天室”
3. Outerhtml 更新为控件或HTML标记
Button.outerhtml=”还原”>”
Text 控件
属性
1. Maxlength
2. Size 文本框的宽度
事件
1. Change
2. Select 选择文本内容时触发
Password 控件(同text)
Radio 控件
属性: checked 是否选中: radio(i).checked
checkbox 控件(同 radio)
image 控件:显示图形信息:类似 img
file 控件
属性: value 返回找到的文件及路径名
submit,reset 控件
属性: value 表单的内容
事件: afterupdate(提交后) beforeupdate errorupdate
select 控件
列表框的属性
名称 |
说明 |
Size |
滚动条列表中一次可见的列表项数 |
Name |
同 input |
Style |
同input |
Multiple |
可选项,是否支持多选 |
Length |
选项的个数 |
Selectedindex |
返回或设置哪个选项被选中 |
Option对象的属性
名称 |
说明 |
Selected |
只能有一个 |
Value |
指定选项的植 |
Text |
指定选项文本 |
Textarea 控件
行数和列数指不用滚动符能看到的内容
间为初始值
asp只是一种编程环境,可以使用vbscript, javascript 语言编写ASP
作为输入语句:
l document.write()
l <%= %>
l 直接使用html输出
l response.write()
asp 的包含文件
被包含文件多以:.inc 作为扩展名
virtual: 表示虚拟目录,file 表示相对路径:
方法:
输出到浏览器:
response.write ;可混合使用HTML标记,但不能输出html标记
response.write "" "
重定向网址:
respose.redirect path
结束程序的运行:可结束ASP程序的运行
response.end
清空缓冲区HTML输出,需要 response.buffer=true
response.clear response.flush
属性:
buffer属性:是否输出缓冲页
cachecontrol属性:是否允许代理服务器取回页面
contenttype属性:调用相应程序打开文件
expire: 确定网页过期时间,可设置:response.expire=0确保安全性
isclientconnected: 检查浏览器是否和服务器仍然连接
pics: 指明网页的内容级别,如暴力和色情的程度
status 设置状态行
集合:
cookies
作用:
一些与服务器的环境和处理活动相关的任务
属性:
scripttimeout: 决定一个页面脚本运行的最长时间,防止死机,必须在asp程序前设置
方法:
createobject: 创建服务器组件的示例
mapmath: 将指定的虚拟路径转化为实际的物理路径
realmath=server.mapmath(“unralmath”)
htmlencode: 将字符串进行HTML编码,可输出一些HTML的特殊标记,引号不能编码输出
response.write server.htmlencode(" response.write "" "
response.write server.htmlencode(">欲输出的文本
") %>显示结果:
urlencode: 进行url编码,用在查询字符串中
编码输出:
response.write server.urlencode("嘿,你好吗?"&"
")
response.write "
"
response.write server.urlencode("http://www.baidu.com")
显示结果:
嘿,你好吗?
http://www.baidu.com
%BA%D9%A3%AC%C4%E3%BA%C3%C2%F0%A3%BF%3Cbr%3E
http%3A%2F%2Fwww%2Ebaidu%2Ecom
Form 集合
l 读取特定元素
request.form(element)
例: response.write("您的性别是:"&request.form("性别")&"
l 读取所有元素对象
for each in request.form next
<% for each ele in request.form
response.write(ele&":"&request.form(ele)&"
")
next
%>
for I=1 to request.form.count next
l 某元素对象的特定值 如:select checkbox控件
request.form(element)(index)
例:<% response.write("您的第二个爱好是:"&request.form("爱好")(2)) %>
l 某元素对象的全部参数值
for each in request.form(element)
querystring 集合
l 读取表单元素: method=”get”
l 读取http查询字符串的参数
设定联接值: asp83.asp?mz=赵一&tel=123212&add=北京
读取: <% response.write(""&request.querystring("mz")&"
的通信录") %>
电话:<%= request.querystring("tel") %> 住址:<%= request.querystring("add") %>
cookies 集合
作用:
n 跟踪特定访问者的次数、时间等
n 广告点击次数
n 不需要键入密码和用户名
n 统计用户资料以实现个性化服务
属性:
使用:
1. 不带key的cookie的创建和读取
创建 <% response.cookies("mybox")="this is mybox"
response.cookies("mybox").expires=date()+7
%>
读取 <%= request.cookies("mybox") %>
2. 带key的cookie的创建和读取
创建 response.cookies("mydesk")("length")=35
读取 request.cookies("mydesk")("length")
3. Cookie的重建
Response.cookies(“name”)=value
form1.submit: 表单的提交函数
作用:
1. 统计网站的点击数
2. 统计广告的点击数
3. 创建聊天室
4. 读取数据库中的数据
集合:
1. Contents 集合:用于存储非对象变量,可与一般变量互相赋值,当服务器关机时,application 对象丢失,可采用序号读取,如:application.contents(i)
变量的初始值为空,判断时为:application.contents(“count”)=empty
2. Staticobjects集合:通过标记在global.asa中创建,如下:
3. 存储数组:先建立一副本,对其操作后,再将其存放到application对象
例:<% dim book()
redim book(3)
book(1)="英语书"
book(2)="数学书"
book(3)="语文书"
application.contents("book")=book
bk=application.contents("book")
response.write bk(1)&bk(2)&bk(3) %>
方法:(常用于可能多个用户访问同一变量)
application.lock application.unlock
确保同一时刻只有一个用户可以修改和存储application变量
事件:
onstart:服务器开始运行
onend:服务器关闭时
只能在global.asa中创建
结束方法
1. 隐式:当超过 sesstion.timeout的时间限制时
2. 显式:利用 session.abandon来中止
集合:
1. Contents集合
2. Staticobject集合
3. 存放数组
属性:
1. Session.sessionid
2. 在用户在设定的时间未进行任何操作,则自动撤消该用户:session.timeout
3. 动态文本显示时采用的格式:session.lcid=localid
4. ASP应用程序使用的字库:session.codepage=codeid
方法:
session.abandon:完成当前的网页后结束session对象
contents.remove(item):删除contents中的变量
contents.removeall:删除contents中所有变量
事件:
session_onstart:打开浏览器时
session_onend:关闭浏览器时
所以,application和session 变量的寿命也不一样
与cookies的关系
存储用户的首选项
作用:存放事件脚本和全局使用的对象。
Global.asa存放在应用程序的根目录中,且是唯一的
使用ASP组件必须先
1. Server.createobject : 创建组件的一个实例
2. 在global.asa文件中使用创建该组件的一个实例,然后把它作为一个ASP内置对象
作用:在网页上轮换显示广告
1. 创建实例对象
set 名称=server.createobject(“MSWC.AdRotator”)
2. adrotator 的属性和方法
3.使用广告轮显组件
1) 创建一adrotator轮换计划文件,结构:
2) 创建一adrotator重定向文件
读取URL: url=request(“url”),再调用网页 response.redirect url
3) 创建ASP网页来显示和轮换广告
创建一adrotator对象:
set obj=server.createobject(“mswc.adrotator”)
在哪个框架中打开:
obj.targetframe=”TARGET=new”
如101.asp
作用:随机变换的是页面内容,可用与每日新闻,广告显示,随机联接
步骤:
1. 创建实例对象
set 对象名=server.createobject("mswc.content rotator”)
2. 内容安排文件(文件名不限)
格式:
%%[#n][//注释]
显示内容
3. 属性和方法
没有属性,方法:读取一个条目choosecontent(<内容安排文件>), 读取所有条目getallcontents(<内容安排文件>),显示的是相对或虚拟路径
4. 使用内容轮显组件:例102.asp
作用:在服务器端对文件和文件夹进行存取访问
1. 创建实例:
set 对象名=server.createobject("scripting.filesystemobject”)
2.文件系统对象模型:包括若干对象
1)filesystemobject的方法
2) folder对象的属性和方法
filesystemobject.createfolder():创建一个新folder对象
filesystemobject.getfolder:返回一个已存在的folder对象
folder对象的方法
3)file对象的属性和方法
filesystemobject的getfile返回一已存在的file对象
file对象的属性
file对象的方法
4)textstream对象的属性和方法
filesystemobject.createtextfile :创建并返回一新的代表文件的textstream对象,operntextfile打开一个文件
textstream对象的属性
textstream对象的方法
3.管理文件夹
建立、移动或重命名、删除和复制
4.管理文件
5.读写文件
创建一textstream对象相当于打开一文本文件,使用textstream的方法进行读、写
作用:统计每个网页被访问的次数,该组件定期把统计的数据写入一个文本文件
1. 创建对象: mswc.PageCounter
2. 方法
3. 使用PageCounter组件,先创建实例,然后调用方法
ado的特点
1. 支持批处理Batch updating
2. 支持存储过程Stored procedures
ado对象模型包括7个对象和3个集合,如图:
ado对象
ado集合
最重要的三个对象:connection command recordset,关系:
connection 对象:
作用:在应用程序和数据库中建立一条数据传输连线
常用属性
常用方法
1)open方法:打开如数据库的连接
格式:connobject.open connectionstring , user , password
2)close方法:关闭与数据源的连接,但并没有删除资源,还可以用open打开
格式: connobject.close
要释放资源: set connobject=nothing
3)execute方法:执行SQL命令或存储过程
有返回记录:
set rs=connobject.execute (commandtext , recordsaffected , options)
无返回记录:
connobject.execute ( commandtext , recordsaffected , options)
commandtext:包括一个表名,或将被执行的SQL语句
recordsaffected:返回影响的记录数
options:表示ADO如何解释commandtext
options参数的取值和意义
command对象
作用:定义数据库的查询动作
常用属性
属性:commandtype类似于 options
方法:execute
有返回格式:
set rs=comm..execute (recordsaffected , parameters , options)
无返回格式:
comm..execute (recordsaffected , parameters , options)
parameters :表示SQL语句的参数集合
recordset对象
作用:对应command对象的查询结果,并通过简单的方法访问每一个记录内每一字段的数据
常用属性
cursortype::共有4中光标类型
0:前滚光标:光标只能向前移动,默认值
1:键盘光标:同步反映其他用户所做的修改和删除、但不能反映增加的记录
2:动态光标:同步反映其他用户的任何操作
3:静态光标:无法同步反映
locktype:四种取值
0:只读锁定,记录只读
1:悲观锁定,编辑记录开始立刻锁定,直到提交给数据提供者
2:乐观锁定,一次锁定一条记录,只有调用UPDATE才锁定记录
3:允许同时更新多条记录
filter:2种使用方式
1:关系表达式
rs.filter=”bh”>30
2:使用准则常量
0-清除以前的filter,看到所有记录
1-只允许查看已修改还未提交的记录
2-允许查看最后修改的记录
3-允许查看数据库最后读取结果的数据
例:rs.filter=1
4) bookmark:需要创建一个允许bookmark属性的recordset对象
5)status:查看更新记录的失败原因
recordset的方法
open:打开一个recordset对象
rs.open [source ][, activeconnection][,cursortype][,]locktype][,option ]
close ,释放资源:set rs=nothing
3)move n [, start ]
n 可去正负值,start 表示移动的起点
4)movfirst movelast moveprevious movenext
5)GetRows 用来读取大量的数据,如:myarray=rs.GetRows (rows , start , fields)
1 连接到数据源
1)创建连接字符串
2)连接到数据源
创建connection对象
set conn=server.createobject (“adodb.connection”)
使用ODBC打开连接
conn.open “driver={Microsoft access driver(*.mdb)};dbq=c:\market\rsg1.mdb”
创建connection对象
set conn=server.createobject (“adodb.connection”)
创建ODBC连接字符串
cs=” driver={Microsoft access driver(*.mdb)};dbq=c:\market\rsg1.mdb”
conn.conncetionstring=cs
打开连接
conn.open
3. 使用RecordSet对象处理结果
创建recordset对象
set rs=server.createobject (“adodb.recordset”)
打开recordset对象
rs.open “职工工资” , conn , 2, 3, 2
sql 命令动词
1. 在记录集中使用SQL
创建connection对象并打开连接
创建recordset 对象
定义SQL语句
sSQL=”SELECT * FROM 职工工资”
打开 recordset对象
rs.open sSQL , connobj , 1 ,1 ,1
2. 在连接对象的Execute使用SQL
创建connection对象并打开连接
定义SQL语句
sSQL=”SELECT * FROM 职工工资”
返回并打开recordset对象
set rs=conn.execute (sSQL)
3. 在命令对象的Execute使用SQL
创建connection对象并打开连接
创建command 对象,并使用activeconnection附加连接
set cmm=server.createobject (“adodb.command”)
set cmm.activeconnection=conn
定义SQL语句
sSQL=”SELECT * FROM 职工工资”
设置command对象的查询字符串
cmm.commandtext=sSQL
返回并打开recordset对象
set rs=cmm.execute ( , , 1)