到目前为止,明显的区别似乎是你不能使用“script”标签混合html和vbscript
例如,这没关系
<% public sub display_literal() %> literal <% end sub %>
但是你应该使用脚本标签
<script language="vbscript" runat="server"> public sub display_literal2() response.write "literal2</br>" end sub </script>
在本页面
http://www.newobjects.com/pages/ndl/alp/asp-structure.htm
它说
In classic ASP the script written in the default script language for the page (i.e. the language assumed for the <% %> tags) is executed second – e.g. all the script code in <% %> tags is initialized after all the <SCRIPT RUNAT=SERVER …> scripts.
但我做了几个测试,无法验证它……
我问,因为我有一个脚本(我现在没有它),使用< %%>给了我一个错误,将其更改为< script>标签解决了问题,但我想知道为什么….
解决方法
顺序是这样的: –
>在< script runat =“server”标记中运行所有脚本,其中指定的语言与默认语言不匹配.这些按文档顺序执行.>运行默认脚本.这意味着执行对响应的隐含写入,其中页面中存在静态内容(不在runat =“server”标记内或在< %%>内)以及< %%>中的任何中间代码再次按文件顺序显然.>在< script runat =“server”标记中找到的全局级别运行任何代码,其中语言与默认脚本语言匹配. 请注意,所有脚本在执行阶段1之前都有一个初始解析,因此可以在阶段3中运行的脚本定义的任何函数都可用于从阶段1调用.
原文地址:https://www.jb51.cc/aspnet/247370.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。