ASP1——变量、数组、方法、表单

ASP是一种动态服务器页面技术,它允许使用VBScript或JavaScript等脚本语言创建交互式网页。文章介绍了如何使用响应写入命令、脚本语言的选择、变量的声明与生存期,包括局部变量、Session和Application变量。此外,还讲解了表单的GET和POST方法,以及Request对象处理表单数据的方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ASP(Active Server Pages 动态服务器页面)是一种生成动态交互性网页的强有力工具。
ASP 文件通常包含 HTML 标签,就像 HTML 文件。然而,ASP 文件也能包含服务器脚本,这些脚本被分隔符

response.write 命令用来向浏览器写输出。

<!DOCTYPE html>
<html>
<body>
<%
response.write("Hello World!")
%>
</body>
</html>

还有一种 response.write 命令的简写方法

<%
="Hello World!"
%>

脚本语言

默认的脚本语言是 VBScript。如果需要设置 JavaScript 为某个特定页面的默认脚本语言,您必须在页面的顶部插入一行语言说明:<%@ language="javascript"%>
注释:与 VBScript 不同,JavaScript 对大小写敏感!你必须根据 JavaScript 的需要使用不同的大小写字母编写您的 ASP 代码。
ASP 与 VBScript 和 JScript(JScript 是微软的 JavaScript 实现)的配合是原生性的。如果您想要使用其他语言编写脚本,比如 PERL、REXX 或者 Python,您必须安装相应的脚本引擎。

变量

  • 声明变量
 <!DOCTYPE html>
<html>
<body>

<%
dim name
name="Donald Duck"
response.write("My name is: " & name)
%>

</body>
</html>
  • 声明数组
 <!DOCTYPE html>
<html>
<body>

<%
Dim famname(5),i
famname(0) = "Jan Egil"
famname(1) = "Tove"
famname(2) = "Hege"
famname(3) = "Stale"
famname(4) = "Kai Jim"
famname(5) = "Borge"

For i = 0 to 5
      response.write(famname(i) & "<br>")
Next
%>

</body>
</html>
  • 判断
 <!DOCTYPE html>
<html>
<body>
<%
dim h
h=hour(now())

response.write("<p>" & now())
response.write("</p>")
If h<12 then
   response.write("Good Morning!")
else
   response.write("Good day!")
end if
%>
</body>
</html>
<%@ language="javascript" %>
<!DOCTYPE html>
<html>
<body>
<%
var d=new Date()
var h=d.getHours()

Response.Write("<p>")
Response.Write(d)
Response.Write("</p>")
if (h<12)
   {
   Response.Write("Good Morning!")
   }
else
   {
   Response.Write("Good day!")
   }
%>
</body>
</html>
  • 变量的生存期

在子程序外声明的变量可被 ASP 文件中的任何脚本访问和修改。

在子程序中声明的变量在每次子程序执行时被创建和撤销。子程序外的脚本无法访问和修改该变量。

如需声明供多个 ASP 文件使用的变量,请将变量声明为 session 变量或者 application 变量。
Session 变量
Session 变量用于存储单一用户的信息,并且对一个应用程序中的所有页面均有效。存储于 Session 中的典型信息有姓名、id 和参数。
Application 变量
Application 变量同样对一个应用程序中的所有页面均有效。Application 变量用于存储一个特定的应用程序中所有用户的信息。

方法

 <!DOCTYPE html>
<html>
<head>
<%
sub vbproc(num1,num2)
Response.Write(num1*num2)
end sub
%>
<script  language="javascript" runat="server">
function jsproc(num1,num2)
{
Response.Write(num1*num2)
}
</script>
</head>

<body>
<p>Result: <%call vbproc(3,4)%></p>
<p>Result: <%call jsproc(3,4)%></p>
</body>

</html>

表单

  • 表单method = “get”
 <!DOCTYPE html>
<html>
<body>
<form action="demo_reqquery.asp" method="get">
Your name: <input type="text" name="fname" size="20" />
<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>
  • 表单method = “post”
 <!DOCTYPE html>
<html>
<body>
<form action="demo_simpleform.asp" method="post">
Your name: <input type="text" name="fname" size="20" />
<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>
  • 单选按钮
 <!DOCTYPE html>
<html>
<%
dim cars
cars=Request.Form("cars")
%>
<body>
<form action="demo_radiob.asp method="post">
<p>Please select your favorite car:</p>

<input type="radio" name="cars"
<%if cars="Volvo" then Response.Write("checked")%>
value="Volvo">Volvo</input>
<br>
<input type="radio" name="cars"
<%if cars="Saab" then Response.Write("checked")%>
value="Saab">Saab</input>
<br>
<input type="radio" name="cars"
<%if cars="BMW" then Response.Write("checked")%>
value="BMW">BMW</input>
<br><br>
<input type="submit" value="Submit" />
</form>
<%
if cars<>"" then
   Response.Write("<p>Your favorite car is: " & cars & "</p>")
end if
%>
</body>
</html>

Request.QueryString 命令用于收集使用 method=“get” 的表单中的值。使用 GET 方法从表单传送的信息对所有的用户都是可见的(出现在浏览器的地址栏),并且对所发送信息的量也有限制。
Request.Form 命令用于收集使用 method=“post” 的表单中的值。使用 POST 方法从表单传送的信息对用户是不可见的,并且对所发送信息的量没有限制。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值