Asp classic 经典的ASP变量范围-我想我已经失去了理智
自从我使用经典asp已经有一段时间了,关于可变范围,我的大脑完全衰退了 我做错了什么Asp classic 经典的ASP变量范围-我想我已经失去了理智,asp-classic,iis-7.5,scope,Asp Classic,Iis 7.5,Scope,自从我使用经典asp已经有一段时间了,关于可变范围,我的大脑完全衰退了 我做错了什么 <SCRIPT LANGUAGE=vbscript RUNAT=Server> dim test test = "Test it" function testAsp() testasp = "Should be a result here " & test end function </SCRIPT> <html> <body> <%
<SCRIPT LANGUAGE=vbscript RUNAT=Server>
dim test
test = "Test it"
function testAsp()
testasp = "Should be a result here " & test
end function
</SCRIPT>
<html>
<body>
<%
response.write(testAsp())
%>
</body>
</html>
暗淡试验
test=“测试它”
函数testAsp()
testasp=“此处应为结果”&测试
端函数
如果我把声明移到块内,一切都好。正在运行Server2008R2,IIS 7.5。有什么变化吗?还是我?把你的
换成
,你应该是个好人
您会被脚本引擎在经典ASP生命周期中的执行顺序所困扰。这很令人困惑,但是
块将在
块之后执行,即使它按源代码的顺序排在第一位。我无法解释为什么在
块中定义函数,但我认为它与函数有关
为了进一步澄清,这是您开箱即用的顺序(假设VBScript配置为默认语言):
块中
更改为
,您应该会表现良好
您会被脚本引擎在经典ASP生命周期中的执行顺序所困扰。这很令人困惑,但是
块将在
块之后执行,即使它按源代码的顺序排在第一位。我无法解释为什么在
块中定义函数,但我认为它与函数有关
为了进一步澄清,这是您开箱即用的顺序(假设VBScript配置为默认语言):
块中
哇-这很简单-对你来说:)我整个上午都在这上面!我的站点是使用V Interdev完成的。这种类型的代码似乎也在我的其他页面中起作用。我真的得看看区别。试着找出他们执行的顺序。Vinterdev把脚本块放得到处都是!谢谢,现在我有了一个开始。哇-那很简单-对你来说:)我整个上午都在这上面!我的站点是使用V Interdev完成的。这种类型的代码似乎也在我的其他页面中起作用。我真的得看看区别。试着找出他们执行的顺序。Vinterdev把脚本块放得到处都是!谢谢,现在我有了一个开始。如果答案解决了您的问题,请在分数和箭头下方的空V图标上打勾,将其标记为已接受。另外,一般来说,除非您明确需要一些不同的东西,否则始终只使用
。我怀疑您是否真的需要这些东西。如果答案解决了您的问题,请在分数和箭头下方的空V图标上打勾,将其标记为已接受。另外,一般来说,除非您明确需要一些不同的东西,否则始终只使用
,我怀疑您是否真的需要这些东西。