what's the difference between <% %> and [removed] in classic asp?

前端 未结 2 481
不思量自难忘°
不思量自难忘° 2020-12-10 16:32

I couldn\'t find much documentation on the web

so far now, the obvious difference seems to be that you cant mix html and vbscript using the \"script\" tag

fo

相关标签:
2条回答
  • 2020-12-10 17:06

    I've just had an issue on this matter and, for practical purposes, the code inside <% %> tags executes before code inside <script runat="server"> </script>.

    The declaration of functions and procedures seems not to be affected by this difference in the way IIS understands the Classic ASP tags -- at least as I don't use conditional code loading with "Server.Execute".

    my server runs Microsoft-IIS/5.1 as in Request.ServerVariables("SERVER_SOFTWARE").

    0 讨论(0)
  • 2020-12-10 17:07

    First off you need to understand that there's a difference in the way server-side script tags are handled depending on whether the language specified is the same as the default language for the page.

    The order is this:-

    1. Run all scripts in <script runat="server" tags where the language specified does not match the default language. These are executed in document order.
    2. Run the default script. That means perform the implied writes to the response where there is static content in the page (the stuff not in runat="server" tags or inside <% %>) and any intervening code in <% %> again in document order obviously.
    3. Run any code at the global level found in <script runat="server" tags where the language matches the default script language.

    Note that all script has an initial parse before executing phase 1, hence any functions that may be defined by scripts run in phase 3 will be available for calling from phase 1.

    0 讨论(0)
提交回复
热议问题