微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

asp-classic – <%%>和经典asp之间有什么区别?

我在网上找不到太多文档

到目前为止,明显的区别似乎是你不能使用“script”标签混合html和vbscript

例如,这没关系

<% public sub display_literal() %>
  literal
&lt% 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>要从< %%>调用函数和过程的标记标签……对吗?

解决方法

首先,您需要了解服务器端脚本标记的处理方式有所不同,具体取决于指定的语言是否与页面认语言相同.

顺序是这样的: –

>在< script runat =“server”标记中运行所有脚本,其中指定的语言与认语言不匹配.这些按文档顺序执行.>运行认脚本.这意味着执行对响应的隐含写入,其中页面中存在静态内容(不在runat =“server”标记内或在< %%>内)以及< %%>中的任何中间代码再次按文件顺序显然.>在< script runat =“server”标记中找到的全局级别运行任何代码,其中语言与认脚本语言匹配. 请注意,所有脚本在执行阶段1之前都有一个初始解析,因此可以在阶段3中运行的脚本定义的任何函数都可用于从阶段1调用.

原文地址:https://www.jb51.cc/aspnet/247370.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐