首页 > 语言 > 关键词  > asp最新资讯  > 正文

ASP教程:初次接触学习ASP脚本程序

2007-06-14 09:47 · 稿源:中国站长站

为什么要学脚本语言呢?ASP和脚本语言又有什么关系呢?

首先说说ASP是贵为何物吧。ASP是Microsoft Active Server Pages的简称,它是一种服务器端脚本环境,可用来创建交互式 Web 页并建立强大的 Web 应用程序。可以表明ASP是一种基于服务器端的脚本环境,那就明白ASP为什么需要IIS支持了,因为IIS即为常用的一类web服务器;那也就明白为什么要学脚本语言了,因为ASP提供的是一种脚本环境。

再次需要说明的是,ASP只是一种环境,而非一种语言。如果真要形象化地说是ASP是网络编程语言的话,那也是属于一个html+脚本+asp提供的内置对象及组件的功能强大的混合语言。

所以,学点脚本非常重要!其实无论是学脚本语言,还是其它语言,我认为首先需要了解的是该语言涵盖的各类特性,包括:数据类型、事件、方法、 对象、属性、语法等当然这都是些空谈,正如在大学课堂上的某计算机语言课一样,搞纯研究性的就是觉得有些索而无味。还是实用些的好,能解决问题的程序才是好程序(印证能逮到老鼠的猫就是好猫的经典圣语,呵呵)

当然,语言这东西还是要你去好好钻研的,比如你写求绝对值的程序,其实一个abs()函数就搞定了。再比如你会vb脚本,但把同样程序替换成java脚本就会出错,它们的数据类型不同,语句语法也不一样啊。正如说中文和外文一样,要会发音标(数据类型),会如何发音(方法),如何说成一句话(语法)……呵呵,有点让你难受吧。行!直接了当。你以后需要注意的是语言的函数、语法。当然也不是让你全看,按照教程中的遇到一个掌握一个。教程学完,差不多也结束了。呵呵,你要相信我。

目前有两种主要的脚本语言:VbScript和JavaScript。因为VbScript作为IIS默认的服务器脚本,所以我们所谈所学的基本是围绕VbScript为脚本的ASP的,当然也不排除有的时候使用javascript.

举一个很简单的例子:

以下为引用的内容:
<script language="vbscript">
<!--
sub button1_onclick
msgbox (" 欢迎使用vbscript! " )
end sub
-->
</script>
<script language="javascript">
<!--
function b213()
{
alert("欢迎使用javascript!")
}
-->
</script>
<form>
<input type="button" name="button1" value="vbs"><br>
<input type="button" name="button2" value="js" onclick="b213()">
</form>

vbscript中的Sub 就是一个事件过程。过程名包含两部分:一部分为按钮名,即 Button1(从 < INPUT > 标记中的 NAME 属性获取);另一部分为事件名,即 OnClick。两部分由下划线 (_) 连接。单击按钮时,Internet Explorer 查找并运行相应的事件过程,即 Button1_OnClick,而MsgBox 就是一个函数,对于它更具体的参数,你就好好看下了。

一时来劲,可能大家都看到网上有种狂恶心的对话框组,原理是什么呢?请看:

以下为引用的内容:
<script language="vbscript">
msgbox"你知道你会点确定的。。。。。。。"
msgbox"不点也要点。。。。。。。。"
msgbox"没办法是吧。。。。。。。。。。?"
msgbox"要不网页打不开啊。。。。。。"
msgbox"这招损人吧。。。。。。。。。"
msgbox"真想揍揍站长。。。。。。。。。"
</script>

其实站长用这些玩弄别人的时候,先玩弄了自己:因为这都是他想出来的啊:)

呵呵,我没有损大家的意思,只是为了学习。

在来个开页和退页弹出对话框的原理吧

以下为引用的内容:
<script language="vbscript">
<!--
sub window_onload()
msgbox"welcome you!"
end sub
sub window_onunload()
msgbox"see you late!"
end sub
-->
</script>

开页显示“welcome you!”,关页显示“see you late!”

以上只是一个显示对话框msgbox,当然还有书写对话框inputbox也顺便看下吧。

以下为引用的内容:

<script language="vbscript">
<!--
dim strname
strname=inputbox("enter your name please:","enter your name","cnbruce")
document.write(strname&",welcome you!<p>")
-->

</script>

有关inputbox的想关参数也去看看吧。

再来看看几个实用的函数:

len():返回字符串长度或者变量的字节长度 

lef():截取一个字符串的前部分内容

right():截取一个字符串的后部分内容

以下为引用的内容:
<script language=vbs>
text="1234567890abcdefgh"
i=10
lentext=len(text)
lefttext=left(text,i)
righttext=right(text,i)
alert ("文本长度是:"&lentext)
alert ("文本左取"&i&" 得的是:"&lefttext)
alert ("文本右取"&i&" 得的是:"&righttext)
</script>

根据这几个,经常看到的长文章后面加“......”的情况就是如下:

以下为引用的内容:

<script language=vbs>
text="123 4567 8fds90 abcde fghxcfv"
i=10
if len(text)>i then '如果文本长度大于给定的值
text=left(text,i) '则提取前段的i位的字符串
alert (text&"...")
else
alert (text)
end if
</script>

还有个比较重要的函数replace()

在字符串中查找,替代指定的字符串

replace(strtobesearched,strsearchfor,strreplacewith)

strtobesearched是字符串; strsearchfor是被查找的子字符串;strreplacewith 是用来替代的子字符串。

下面的一个就是很有用的文字转换程序

以下为引用的内容:
<script language=vbs>
text="你好,欢迎"
text=replace(text,"你好","nihao")
text=replace(text,"迎","Ying")
alert (text)
</script>

经常在发送EMAIL时,添加多个地址,中间采用“;”号进行分隔,那具体怎么分解接受过来的多个EMAIL地址呢?采用Split函数:Split 函数从字符串中返回数组。

以下为引用的内容:
<script language=vbs>
cnbruce="webjx@163.com;webjx@webjx.com;tslxg@hotmail.com"
MyArray = Split(webjx, ";")
a=MyArray(0)
b=MyArray(1)
c=MyArray(2)
alert(a)
alert(b)
alert(c)
</script>

这些都是比较现实较好玩的些,玩中学习也不错:)但毕竟我们是要编程的,说到编写程序,我知道程序结构可以分:

1,顺序结构:就是最普通的,从上往下,从左往右执行的程序

2,选择结构:给你两个条件,要不这样(if ... then),要不那样(else),任君选择:)

3,循环结构:给你一个最大发挥的空间,在不超出这个范围内进行活动(循环),否则自动退出(跳出循环)。

再复杂的程序也无非是由这三种结构综合嵌套运用过来的,你说是吧。

顺序结构没多少要说,因为程序执行基本都是这方向。

来看看选择结构,当然选择结构也可以嵌套。

以下为引用的内容:
<body>
hello,
<script language="vbscript">
<!--
dim thishour
thishour=hour(time)
if thishour<=12 then
document.bgcolor="red"
document.fgcolor="black"
document.write("上午好!")
else
if thishour<=18 then
document.bgcolor="blue"
document.fgcolor="white"
document.write("下午好!")
else
document.bgcolor="green"
document.fgcolor="yellow"
document.write("晚上好!")
end if
end if
-->
</script>
本页的作用是根据不同时间显示不同颜色和欢迎信息。
</body>

以上程序很简单吧,只要能认识英文就会懂程序(我是这么理解的:)

先把现在的小时提交出来:hour(time);

然后和12比较判断,如果<=12,肯定是上午了,否则就是下午和晚上;

否则里面继续条件判断,如果时间再<=18的话,那肯定就是下午了;

最后,不用说,瞎子猜猜也知道是晚上了:)

有关上一程序中的document.bgcolor就是文档的背景色,document.fgcolor就是文档的前景色(文字色),下一程序是动态改变背景颜色的。

以下为引用的内容:
<script language="vbscript">
<!--
sub setbgcolor(bcolor)
document.bgcolor=bcolor
end sub
-->
</script>
<form>
<input type="radio" name="color" onclick=setbgcolor("red")>red<br>
<input type="radio" name="color" onclick=setbgcolor("green")>green<br>
<input type="radio" name="color" onclick=setbgcolor("blue")>blue<br>
<input type="radio" name="color" onclick=setbgcolor("yellow")>yellow<br>
<input type="radio" name="color" onclick=setbgcolor("gray")>gray<br>
</form>

有关条件选择结构的嵌套再show出一个表单检测的程序

以下为引用的内容:
<html><head><title>abc</title>
<script language="vbscript">
<!--
sub btnsubmit_onclick
if form1.name.value<>"" then
if form1.addr.value<>"" then
if form1.email.value<>"" then
if instr(form1.email.value,"@")<>0 and instr(form1.email.value,".")<>0 then
form1.submit
else
alert"email error!"
end if
else
alert "enter your email!"
form1.elements("email").focus
end if
else
alert "enter your address!"
form1.elements("addr").focus
end if
else
msgbox "enter your name please!"
form1.elements("name").focus
end if
end sub
-->
</script>
</head>
<body>
<form name="form1" method=post action="bug.html">
your name:<input type="text" name="name"><br>
your addr:<input type="text" name="addr"><br>
your email:<input type="text" name="email"><br>
<input type="button" name="btnsubmit" value="submit">
</form>
</body>
</html>

程序是给出来了,但看起来比较难懂,有时程序执行时间也比较重要,所以得精简程序代码。

正所谓:写程序容易,写经典程序难啊,那上面的程序还可以换种思维方式。改用javascript(注:学的是编程思想,不要太过计较脚本类型)

以下为引用的内容:
<html>
<head>
<title>abc</title>
<script language="javascript">
<!--
function form1_onsubmit()
{
if (document.form1.name.value=="")
{
alert("请设定您的登陆名。")
document.form1.name.focus()
return false
}
else if(document.form1.addr.value=="")
{
alert("请填写您的地址。")
document.form1.addr.focus()
return false
}
else if(document.form1.email.value=="")
{
alert("请填写您的E-Mail地址。")
document.form1.email.focus()
return false
}
}
-->
</script>
</head>
<body>
<form name="form1" onsubmit="return form1_onsubmit()">
your name:<input type="text" name="name"><br>
your addr:<input type="text" name="addr"><br>
your email:<input type="text" name="email"><br>
<input type="submit" name="submit" value="submit">
</form>
</body>
</html>

最后来看下循环结构吧:1到500可不是一个一个写出来的。

以下为引用的内容:
<script language=vbs>
for i= 1 to 500
document.write(i&"<br>")
next
</script>

当然循环不只可以用for,还可以用do while...loop等

反正程序这东西是代替我们少做了许多重复单一无聊的事——只要你合理利用程序。

应该有些成就吧,学语言,学编程就是学语法语义,学编程架构思想。

当然这要你有扎实的本语言的基础,基础是什么?你知道哪些函数吗?你知道怎么用程序怎么判断偶数吗(包含了运算)?你知道如何进行表单检测吗?你知道哪三种程序架构吗?

呵呵,把以上的程序吃透,最好再多看看脚本参考手册,跟我就可以开始ASP的上路了。

补:

Function过程与Sub过程类似,但是Function过程可以返回值。

Function过程也可以使用由调用过程传递的常数、变量或表达式作为参数。如果Function过程无任何参数,则Function语句必须包含括号()。

Function过程通过函数名返回一个值,这个值是在过程的语句中赋给函数名。Function返回值的数据类型总是Variant。

举报

  • 相关推荐
  • 如何用deepseek生成短视频脚本

    本文介绍如何利用DeepSeek工具快速生成30秒短视频脚本。该工具可根据用户需求,自动生成包含开场悬念、核心干货、反转情节和结尾互动的优质脚本。操作流程包括:1.登录DeepSeek官网;2.输入具体指令(如"生成洗发水广告脚本,需包含开场悬念+3个核心干货+结尾互动");3.检查并优化脚本内容;4.补充画面风格、背景音乐等细节。通过多次指令调整可获得更理想的脚本

  • peak怎么存档 peak游戏存档教程 附peak存档mod下载安装教学

    文章推荐Steam平台新推出的多人合作攀岩游戏《PEAK》,采用Q版画风,玩家需配合翻越高山,地图24小时动态变化保持新鲜感。针对联机卡顿问题,建议使用加速器优化网络,并提供MOD助手一键下载安装教程,包括前置MOD和功能存档MOD的安装步骤,帮助玩家获得更流畅的游戏体验。

  • 国内详细MCP教程网站有哪些?MCP服务资源平台去哪找?

    在当今快速发展的AI技术浪潮中,Model Context Protocol(MCP,模型上下文协议)作为一种新兴的开放标准协议,正逐渐成为AI领域的重要组成部分。 今天,我们有幸介绍一个专注于MCP服务器和相关服务的集合平台——AIbase。 AIbase平台为全球的AI开发者和爱好者提供了一个全面的MCP服务器资源库。据最新统计,该平台已经收录了超过 121231个 MCP服务器,涵盖了从热门推荐到最近更新�

  • AIbase MCP服务库上线:集成服务器、客户端、调试、案例教程等服务

    在当今数字化时代,人工智能技术正以前所未有的速度发展,深刻地改变着我们的生活和工作方式。而要充分发挥AI的强大能力,离不开高效的工具和服务支持。今天,就让我们来了解一下一个专注于MCP(Model Context Protocol)服务的优质平台 —— AIbase(www.aibase.cn)。 AIbase平台(https://mcp.aibase.cn/)作为一个精选全球优质MCP服务器的集合平台,为AI应用开发者和爱好者提供了丰富的�

  • 支持AI生成、批量执行;贝锐向日葵发布自动化企业脚本功能

    文章介绍了企业远程IT运维中批量操作的重要性,指出传统人工方式效率低且易出错。贝锐向日葵推出的自动化企业脚本功能可批量下发执行运维指令,支持跨平台操作和AI生成脚本代码,大幅降低技术门槛。该功能内嵌"向日葵AI助手",用户可通过自然语言描述需求自动生成脚本,目前开放限时免费体验。

  • CAD下载安装教程免费(2025全新CAD下载安装教程)CAD教程,CAD软件安装包,CAD安装教程,CAD软件免费下载

    本文提供AutoCAD 2025免费安装教程,包含详细步骤和注意事项。主要内容包括:1. 硬件要求(64位Win10/11系统、3GHz以上CPU、8G内存、10GB硬盘空间);2. 安装前准备(关闭杀毒软件、断开网络);3. 安装步骤(解压安装包、管理员身份运行Setup.exe、自定义安装路径);4. 激活方法(复制破解文件到安装目录);5. 新版本特色功能(AI智能推荐、云协作等)。文末附常见问题解答和用户实测反馈,帮助10分钟内完成专业CAD软件安装。

  • 性能超OpenAI、Gemini!月之暗面发布首个自主强化学习Agent

    月之暗面(Moonshot AI)正式推出其首款Agent产品Kimi-Researcher(深度研究),并已启动小范围灰度测试。 该产品基于端到端自主强化学习(end-to-end agentic RL)技术打造,在HLE测试中表现优异,性能超越Claude 4 Opus、Gemini 2.5 Pro及OpenAI Deep Research,并与Gemini-Pro的Deep Research Agent持平。 Kimi-Researcher 是一款高度自主的智能研究助手,能够独立规划任务流程并交付完整结果。与其他Agent不�

  • 开启家庭教育新模式?知乎“答主评审团”测评科大讯飞学习机T30 Pro

    知乎"答主评审团"对科大讯飞T30Pro学习机进行深度实测,10位涵盖教育从业者、产品经理、双语家庭等多领域答主参与评测。评测发现该产品通过AI精准学功能实现知识薄弱点诊断,提供跨年级知识图谱,支持启发式互动教学。在语文启蒙阶段融入国学地理等文化元素,数学学科具备"错因溯源"能力,英语学习则通过自然拼读和口语互动激发兴趣。产品采用"诊-学-练"闭环设计,家长可通过APP协同监督学习进度。评测指出该设备适合有明确学习规划的家庭,能有效减轻家长陪读负担,实现从"苦力型陪读"到"策略型管理"的转变。

  • 4个月大婴儿遭月嫂整晚暴力喂奶 母亲:将走司法程序

    近日,江苏苏州一起月嫂暴力对待婴儿的事件引发社会热议。 6 月 24 日,婴儿母亲王女士通过家中安装的监控设备,目睹了令人震惊的一幕:她雇佣的月嫂在夜间照顾仅 4 个月大的宝宝时,不仅强行扭转婴儿头部,还猛烈摇晃奶瓶硬塞入婴儿口中,甚至敲打奶瓶、踢踹婴儿床,且此类粗暴行为每小时便重复一次,导致孩子整夜无法安睡,哭闹不止。

  • 小米总裁回应去美的学习:进入家电市场不卷价格

    今日午间,小米集团总裁卢伟冰通过社交平台发布视频,系统阐述小米对家电行业的战略思考与未来规划。针对此前美的集团董事长方洪波“小米是否计划挤下传统家电巨头”的业内热议,卢伟冰首度公开回应,并分享了小米与行业领军企业的交流成果。 卢伟冰透露,去年他曾带领团队先后赴广东佛山拜访美的集团董事长方洪波,并前往青岛与海尔集团董事局主席周云杰展开