|
在 ASP 定界符中可以包含任何在主脚本语言中合法的语句、表达式、过程或操作符。在 VBScript 和其他脚本语言中,语句是语法完整的单元,该单元表达某项活动、声明或定义。下面的条件语句 If...Then...Else 是一条常见的 VBScript 语句。</p><p> <% <br/> If Time >= #12:00:00 AM# And Time < #12:00:00 PM# Then <br/> Greeting = "Good Morning!" <br/> Else <br/> Greeting = "Hello!" <br/> End If<br/> %> </p><p> <%= Greeting %><br/> 这条语句将值 "Good Morning!" 或值 "Hello!" 存储在变量 greeting 中。<%= Greeting %> 命令将当前的变量值发送到浏览器中。</p><p> 这样,在(Web 服务器所在时区的)正午 12 点前浏览该脚本的用户将看到:</p><p> Good Morning!<br/> 在正午 12 点或以后浏览此脚本的用户将看到:</p><p> Hello!<br/> 在语句的不同部分之间可以加入 HTML 文本。例如,下面的脚本在If...Then...Else 语句中加入了 HTML,产生了与上面脚本同样的结果:</p><p> <% If Time >= #12:00:00 AM# And Time < #12:00:00 PM# Then %> <br/> Good Morning!<br/> <% Else %><br/> Hello!<br/> <% End If %><br/> 如果条件为真——也就是说,如果时间为午夜、午夜以后或者中午以前,那么 Web 服务器将跟随条件(“Good Morning”)的 HTML 发送到浏览器;否则,将跟随 Else 的 HTML(“Hello”)发送到浏览器。这种混合 HTML 和脚本命令的方式可以方便地将 If...Then...Else 语句变换为几行 HTML 文本。如果要在 Web 页上显示多处问候,前一个例子更为有用。只需要设置一次变量,就可以重复显示。</p><p> 最好从脚本命令中将 HTML 文本返回到浏览器,而不用脚本命令散布 HTML 文本。要将文本返回到浏览器,请使用 ASP 的内建对象 Response。下面的例子可以产生与前一个脚本同样的结果:</p><p> <% <br/> If Time >= #12:00:00 AM# And Time < #12:00:00 PM# Then <br/> Response.Write "Good Morning!"<br/> Else<br/> Response.Write "Hello!"<br/> End If <br/> %><br/> Response.Write 将跟随的文本发送到浏览器。要动态构造返回浏览器的文本,请在语句中使用 Response.Write。例如,可能要构造包含一些变量值的字符串。在 使用组件和对象 以及 向浏览器传送内容 中了解到更多有关 Response 对象和一般对象的信息。现在,先了解将脚本命令插入到 HTML 页中的几种方法。</p><p> 在 ASP 定界符中可以包含用默认主脚本语言编写的过程。</p><p> 如果正在使用 JScript 命令,可以插入花括号指示语句块直接进入 ASP 命令,而不用考虑它是否夹杂着 HTML 标签和文本。例如:</p><p> <% if (screenresolution == "low") { %><br/> This is the text version of a page.<br/> <% } else { %><br/> This is the multimedia version of a page.<br/> <% } %><br/> |
|