How Can we use multiple forms in single asp.net application?
Answers were Sorted based on User's Feedback
Answer / isha
ASP.NET pages can contain no more than one HTML form and
can post only to itself, but you can work around this
limitation to add extra input forms
How can I use multiple HTML forms in an ASP.NET
application? How can I build a page to make it contain a
small form in a corner for users to login or start a
search? These are frequently asked questions from those who
do serious ASP.NET development. The problem arises from the
fact that ASP.NET forces a single-form programming model.
In HTML, the form is the construct designed to gather some
input data and post it to the server for further
processing. The form is seen as a collection of <input>
tags such as textboxes, drop-down lists, and checkboxes,
whose contents are automatically collected and posted when
a submit button is pressed. Likewise, the same finalizing
process can be started via script. In HTML, you can have as
many forms as you like in each and every HTML page. This
structure has been maintained in Active Server Pages (ASP),
mostly because ASP is a sort of wrapper built around the
HTML page. In the end, with ASP you create the page
structure from an HTML basement with some opened windows of
dynamically generated markup.
ASP.NET is quite different and qualifies as a true runtime
environment that enforces its own programming rules to
generate the same kind of output—HTML markup. In doing so,
ASP.NET mandates that, at most, one form is supported, and
any submissions the web server can receive from a page
should target the same original URL. In short, each ASP.NET
page can contain no more than one HTML form and can post
only to itself.
There are many benefits to the ASP.NET programming model
out of this pattern, the most important of which is the
ability to handle postback events on top of a stateful
architecture. In ASP, how did you manage to maintain the
state of input elements across two successive requests for
the same page? Should I say it? I guess you were forcing
the action attribute of the HTML form to the same URL of
the current page and using some code blocks and the session
state to restore key attributes on input fields. At its
core, this is just what ASP.NET does, except that it uses
viewstate instead of session state and that it promotes the
model to rank of a “mandatory” rather than “optional”
feature.
In summary, to be able to use ASP.NET server controls for
capturing some user input, you have to use the ASP.NET
server form control. In doing so, you lose the power of
controlling the action attribute of the form and are
limited to, at most, one form per page.
Hence the initial question, how can you insert a second
form in an ASP.NET page?
If your goal is “changing” the form from time to time,
obeying different runtime conditions, then be aware that
the enforced rule states that only one form can be visible
at any time. So you can place as many as <form
runat=server> tags as needed in a page, as long as only one
of them is marked with visible=true. By acting on the
visible attribute, you can programmatically switch from one
form to the next.
If your goal is having a “child” form for login or search
purposes, the solution is even simpler: Stick to classic
HTML forms; that is, <form> tags devoid of the runat
attribute. ASP.NET doesn’t exercise any control on tags not
marked with the runat attribute and you’re just fine until
HTML supports multiple forms. What do you lose in the
change? The ability of using postbacks in the target page
of the login or search. Just use the ASP classic
programming model—the Request object—and you’re all set.
Is This Answer Correct ? | 10 Yes | 2 No |
Answer / kuldeep
Yes, We can have multiple forms in ASP.NET. There should be
one form with runat attribute and rest without runat
attribute
Is This Answer Correct ? | 4 Yes | 0 No |
List the advantages and disadvantages of user control an custom control?
Distinguish between Server-side and Client-side code with its functionality?
In SP has contains 10 query,By Using Dataset Object I need to fetch 8th query of records? How?
How does session work in asp net?
how we Creating a Web Service
What is gridview in asp.net?
Why will you usually create an aspnet user account in the database for an asp.net web application?
For which does this Codebehind="MyCode.aspx.cs" is relevent to ?
What is content page in asp net?
What is the difference between application state and caching?
what is difference between User Control,Custom Contro1,Web server control and template controls
What is application variable?