HOWTO: Creating a Dynamically Growing Form Using ASP
ID: Q163499
|
1.00
WINDOWS NT
kbhowto
The information in this article applies to:
-
Active Server Pages
-
Microsoft Internet Information Server versions 4.0, 5.0
SUMMARY
This article provides an example of how to simulate a dynamically growing
form using Active Server Pages. This example allows you to enter items
one at a time, and add them to a list. Once the list has been created, it
can be submitted as a whole.
MORE INFORMATION
In the following example, a basic form is drawn with one text box. You
can enter information in that text box, and click Add Item to List. This button submits the form to the same file. As each item is
entered, it is added to the form as a new text box with the name ITEMS.
Ultimately when the whole list is submitted, there are several items in the
list that can be looped through as a collection of ITEMS.
To test this technique, save the text below to a file named Dynaform.asp.
Be sure that this file is located in an IIS Virtual Root.
File: DYNAFORM.ASP
<%@ language = vbscript%>
<% Response.Expires = 0 %>
<HTML>
<HEAD>
<TITLE>Dynamically Growing Form</TITLE>
</HEAD>
<BODY>
<%
If Request("Action") = "Submit the List" Then
' Show what was entered.
Response.Write "<B>Here are the Items submitted:</B><BR>"
nItems = Request.Form("Items").Count
For i = 1 To nItems
' Show submitted Items
Response.Write Request.Form("Items")(i) & "<BR>"
Next
Response.Write Request("Item") & "<BR>"
Else
' Create the form from all items. %>
<FORM Action=dynaform.asp Method=Post>
<B>Items:</B><BR>
<%
nItems = Request.Form("Items").Count
For i = 1 To nItems
' Show previously submitted Items
Response.Write "<INPUT Type=Text Name=Items Value=""" & _
Trim(Request.Form("Items")(i)) & """><BR>"
Next
If Request.Form("Item") <> "" Then
' paint a new input box, and store the old Item in Items collection
Response.Write "<INPUT Type=Text Name=Items Value=""" & _
Trim(Request.Form("Item")) & """><BR>"
Response.Write "<P>Please enter an Item,<BR>"
Response.Write "and submit them one at a time<BR>"
Response.Write "by pressing the Add Item button.<BR>"
Response.Write "<INPUT Type=Text Size=50 Name=Item Value="""""">"
Else
' No Item was submitted, don't show an error
Response.Write "<P>Please enter an Item,<BR>"
Response.Write "and submit them one at a time<BR>"
Response.Write "by pressing the Add Item button.<BR>"
Response.Write "<INPUT Type=Text Size=40 Name=Item Value="""""">
<BR>"
End If
%>
<P>
<INPUT Type="Submit" Name="Action" Value="Add Item to List">
<INPUT Type="Submit" Name="Action" Value="Submit the List">
<BR>
<% End If %>
</FORM>
</BODY>
</HTML>
REFERENCES
For the latest Knowledge Base articles and other support information on
Visual InterDev and Active Server Pages, see the following page on the
Microsoft Technical Support site:
http://support.microsoft.com/support/vinterdev/
Additional query words:
1.00
Keywords : kbcode kbASP kbASPObj kbScript kbVisID kbGrpASP kbiis400 kbiis500
Version : winnt:
Platform : winnt
Issue type : kbhowto