This article was previously published under Q190939
This article has been archived. It is offered "as is" and will no longer be updated.
If you create an Active Server Pages (ASP) page in Visual InterDev and edit it in Microsoft FrontPage 98, the ASP page appears successfully the first time that you preview it but displays errors if the page round trips to the server and back or if you link to another page through server-side code.
The Scripting Object Model in Visual InterDev requires some specific textat the top of the page and just after the end </BODY> tag. This textincludes a <FORM> tag. However, FrontPage does not allow <FORM> tags outside of the <BODY> tags. When you save a Visual InterDev ASP page that has the Scripting Model enabled (which is required for Design-Time Control functionality) in FrontPage 98, the <FORM> tags are moved to immediately follow the initial <BODY> tag. This means that none of the Design-Time Controls (DTCs) within the <BODY> tags appear within the <FORM> tags, so any Post to the server does not recognize the DTCs.
To preserve the round trip and server-side processing of code that is related to the DTCs, do not use FrontPage 98 to edit ASP pages that depend on the Scripting Object Model.
If you have already edited a page in FrontPage 98, use the following stepsto restore the functionality:
Open the page in Visual InterDev 6.0.
In the properties for the page, select Enable scripting object model.
Read-only, grayed out text appears at the top of the page and just after the </BODY> tag.
Delete the following lines from the top of the page if duplicated:
<% ' VI 6.0 Scripting Object Model Enabled %> <!--#include file="_ScriptLibrary/pm.asp"--> <% if StartPageProcessing() Then Response.End() %>
Delete the <FORM> tags that follow the <BODY> tag:
<form name="thisForm" METHOD="post"> </form>
Delete the following lines just after the <BODY> tag ifduplicated:
<% ' VI 6.0 Scripting Object Model Enabled %> <% EndPageProcessing() %>
Microsoft has confirmed that this is a bug in the Microsoft products that are listed at the beginning of this article.
This bug was corrected in Visual Studio 6.0 Service Pack 3. For more information about Visual Studio service packs, please see the following articles in the Microsoft Knowledge Base:
194022 INFO: Visual Studio 6.0 Service Packs, What, Where, Why
194295 HOWTO: Tell That Visual Studio 6.0 Service Packs Are Installed
FrontPage 98 may also move script blocks or controls that were placed abovethe <BODY> tag to below the <BODY> tag. The script is generally maintained in whole blocks and therefore does not usually cause a problem.
The Scripting Object Model uses hidden elements on the client to passinformation back to the server. These elements are created on the flythrough the call to EndPageProcessing. This call must appear before the </FORM> tag, otherwise the hidden elements are not part of the HTML form and have no effect.
Steps to Reproduce Behavior
Create an ASP page in Visual InterDev 6.0.
Add a button DTC.
Click Yes to enable the Scripting Object Model when prompted.
Add a label DTC, and set the caption.
Write a server-side event handler for the button to alter the label caption, for example:
Sub Button1_onclick() Label1.setCaption(Label1.getCaption() & "*") End Sub
Save and browse the page.
NOTE: You can click the button several times, and a star is added each time.
Open the file in FrontPage 98 and save it.
Browse the page.
NOTE: The button function works the first time that you click it and fails after that.