ASP是什么?

•ASP代表Active Server Pages(动态服务器页面)

•需在IIS中运行的程序

我自己的理解就是UI和逻辑代码同在一个页面中,而缺点就是不易维护。code-Behind是asp.net中的术语(代码后置),它的出现解决了这一问题。

ASP基本语法:

ASP的脚本代码都是用<% %>包裹起来的。

response.write输出语句

 <!DOCTYPE html>
<html>
<body>
<%
response.write("我爱你")
%>
</body>
</html>

也可以简写成<%

="我爱你"

%>

ASP主要使用两种脚本语言,分别是VBScript和JavaScript,其中页面默认是VB,如果需要指定,在页面顶部插入<%@ language="JavaScript" %>来说明。

VB对于大小写不敏感,js则敏感,需要注意。同时我自己觉得vb语法比较随意,先学的是ASP.NET,C#的语法就较为规范一点。最起码写完给个;号以表示结束,ASP就不用分号结尾。

ASP变量的声明和使用:

 <!DOCTYPE html>
<html>
<body> <%
Dim UserName
name="阿三"
response.write("你可以叫我: " & UserName)
%> </body>
</html>

声明他用的Dim,我觉得和JQury中那个var类似。都不表示具体的类型,无类型。至于&和C#中的“+”的作用相同,拼接字符串。

ASP根据时间来判定输出什么内容(VB脚本--IF语句):

 <!DOCTYPE html>
<html>
<body>
<%
dim h
h=hour(now()) response.write("<p>" & now())
response.write("</p>")
If h< then
response.write("Good Morning!")
else
response.write("Good day!")
end if
%>
</body>
</html>

因为我现在没有可测试的工具,所以有的想法只能先记录一下。

其实我有点搞不懂为什么要这样单行输出,P标记写在一起应该没啥问题。

if 条件 then 

为True执行 某代码块

else

执行某代码

end if    以它说明整个if语句结束。

ASP数组使用For循环遍历取值:

 <!DOCTYPE html>
<html>
<body> <%
Dim Name(),i
Name() = "A"
Name() = "B"
Name() = "C"
Name() = "D" For i = to
response.write(Name(i) & "<br>")
Next
%> </body>
</html>

看着这个to就有点懵,后来通过栗子发现,它表示从0到3,且等于3。与C#中有点差别,呐你看

For (i=0;i<4;i++)

{}

ASP子程序

当用VBScript编写的ASP文件调用VBScript或JavaScript子程序时,可以使用call关键字调用,后面跟子程序名称。

 <!DOCTYPE html>
<html>
<head>
<%
sub vbproc(num1,num2)
response.write(num1*num2)
end sub
%>
</head>
<body> <p>Result: <%call vbproc(,)%></p> </body>
</html>

如果子程序需要参数,分两种情况:

使用call,参数必须在括号里面,即参数必须用括号括起来。

不使用call,参数则不需要用括号括起来。<%vbproc 3,4 %>;

如果子程序不需要参数参数,括号可选,括不括看你个人爱好。

当用JavaScript编写的ASP文件调用VBScript或JavaScript子程序时,必须在子程序后面使用括号。

子程序就好比如JQury中的方法,funcation zcx(){},我第一次听到这个名词的时候有点糊。

ASP表单

request.QueryString收集的是method=“get”的表单中的值。

 <!DOCTYPE html>
<html>
<body>
<form action="demo_reqquery.asp" method="get">
Your name: <input type="text" name="fname" size="" />
<input type="submit" value="Submit" />
</form>
<%
dim fname
fname=Request.QueryString("fname")
If fname<>"" Then
Response.Write("Hello " & fname & "!<br>")
Response.Write("How are you today?")
End If
%>
</body>
</html>

该方法从表单传出的信息对所有的用户是可见的(如输出的值会显示在网页的地址栏上),对发送的信息的数量也有限制。

request.Form收集使用method=“post”的表单中的值,信息不可见,且数量没有限制。

 <!DOCTYPE html>
<html>
<body>
<form action="demo_simpleform.asp" method="post">
Your name: <input type="text" name="fname" size="" />
<input type="submit" value="Submit" />
</form>
<%
dim fname
fname=Request.Form("fname")
If fname<>"" Then
Response.Write("Hello " & fname & "!<br>")
Response.Write("How are you today?")
End If
%>
</body>
</html>

对于表单中取到值,用 & &包裹起来,类似于在ADO.net写数据的增删改中,数据库中的每一项用“+ +”包裹起来一样;而前面也看到了,在输出变量时,只用&开头,这里有点小疑问。感觉都是包裹一个变量数据,都统一用&&包裹或&开头行不行?

ASP 基础一的更多相关文章

  1. ASP 基础三 SQL指令

    一 增删改查 <% set conn=server.CreateObject("adodb.connection") DSNtemp="DRIVER={SQL Se ...

  2. ASP 基础二 内置对象

    一 Request 二 Response 三 Application 四 Session 五 Server <script language="vbscript" runat ...

  3. ASP 基础一 基本语法

    一 声明变量 二 给变量赋值 三 循环 四 case <html> <head title="test hello world"> </head> ...

  4. ASP 基础一 网站开发 初步认识

    一 .ASP 与 ASP.NET的区别 i.ASP是解释型的动态语言,asp文件包含了前端和动态语言VBScript,来实现对服务器的交互,运行在IIS.PWS等WEB服务器上 II.ASP.NET是 ...

  5. asp基础

    0.1在浏览器中通过查看源代码的方式是无法看到 ASP 源代码的,你只能看到由 ASP 文件输出的结果,而那些只是纯粹的 HTML 而已.这是因为,在结果被送回浏览器前,脚本已经在服务器上执行了. 0 ...

  6. ASP.NET之旅—再一次与ASP谋面

    ASP对我来说已经不是新名词了,因为在一年以前就开始了ASP的学习,那时候虽然效果很不好,但是对ASP还是有了一些最基础的了解.ASP.NET是在ASP基础上增加了一些.NET的一些特性,基础的东西还 ...

  7. 精通Web Analytics 2.0 (4) 第二章:选择你的网络分析灵魂伴侣的最佳策略

    精通Web Analytics 2.0 : 用户中心科学与在线统计艺术 第二章:选择你的网络分析灵魂伴侣的最佳策略 在Web Analytics 2.0的新世界秩序中,您必须跳出"单一真理来 ...

  8. 入坑IT都快十年了

    一起帮的开发直播已经告一段落:一是主体的功能差不多都实现了,二是用到的架构技术都展示得差不多了.以后就算继续开发,也应该都是一些“技术上”重复的工作而已.整个直播过程耗时近半年,SVN提交1062次, ...

  9. js收藏代码

    js收藏代码~ 1. oncontextmenu="window.event.returnValue=false" 将彻底屏蔽鼠标右键 <table border oncon ...

随机推荐

  1. Spring IOC(一)体系结构

    Spring IOC(一)体系结构 Spring 系列目录(https://www.cnblogs.com/binarylei/p/10198698.html) BeanFactory 是Spring ...

  2. 【UI测试】--安全性

  3. this高级应用 - 域隔离

    在js环境中,this有很多指向(window.dom.object等),巧妙的利用this,可以有效的防止变量或方法被外界污染,保证代码健壮性,实例如下. demo: <!DOCTYPE ht ...

  4. oracle 62进制序列号

    create or replace function GetSerial62(v_lpad number default 0) return varchar2 IS v_tmp number(38,0 ...

  5. SpringMVC学习笔记:数据的接收与返回

    SpringMVC的定义:Spring Web MVC is the original web framework built on the Servlet API and included in t ...

  6. 13个开源GIS软件 你了解几个?

    地理信息系统(Geographic Information System,GIS)软件依赖于覆盖整个地球的数据集.为处理大量的 GIS 数据及其格式,编程人员创建了若干开源库和 GIS 套件. GIS ...

  7. 机器学习笔试--LeetCode

    #########简单######### 共25道: 1. 两数之和 给定一个整数数组和一个目标值,找出数组中和为目标值的两个数. 你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用. 示例 ...

  8. kvm虚拟化平台搭建

    一.虚拟化 虚拟化是指计算机元件在虚拟的基础上而不是真实的基础上运行.虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程.CPU的虚拟化技术可以单CPU模 拟多CPU并行,允许一个平台同时运行多个操 ...

  9. python处理中文

    python 清洗中文文件 需要用到的两个链接: 1,unicode编码转换器 http://www.bangnishouji.com/tools/chtounicode.html 2,Python匹 ...

  10. Unicode和多字节的相互转换

    多字节转Unicode 四步: Step1 #include <iostream> #include "windows.h" using namespace std; ...