YES.
Run these two scripts:
(a)
<%@language="vbscript"%> <script language="VBscript" runat=server> response.write("1<p>") </script> <script language="jscript" runat=server> Response.Write("2<p>"); </script> <% Response.write("3<p>") %> <script language="jscript" runat=server> Response.Write("4<p>"); </script> <script language="VBscript" runat=server> response.write("5<p>") </script>
|
(b)
<%@language="JScript"%> <script language="VBscript" runat=server> response.write("1<p>") </script> <script language="jscript" runat=server> Response.Write("2<p>"); </script> <% Response.Write("3<p>"); %> <script language="jscript" runat=server> Response.Write("4<p>"); </script> <script language="VBscript" runat=server> response.write("5<p>") </script>
|
Pay particular attention to the order of the numbers that display on the screen, and compare it to the order of execution in your scripts. In the best case, by mixing the two techniques you could have odd displays such as this. In the worst case, you could have functions that are undefined, because you actually called them before you initiated them.
My biggest recommendation: don't mix <%%> and <script runat=server>. Use one or the other.
Tom Stone adds that this is the order of execution:
- scripts in non-default language
- scripts using <% %>
- scripts in default language