Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

MVC asp.net: Submit multiple forms

When submitting one form from view, how can i also read or have controller read data in another form in same page?

like image 217
zsharp Avatar asked Jan 20 '09 01:01

zsharp


2 Answers

When you submit a form with a browser, it will only send data for the fields within that <form></form>. This is true regardless of the back-end technology that you use, whether it be ASP.net, MVC.net, PHP, Python, etc.

The only two options I can really think of would be:

  1. Do like WebForms does and just place a <form> around the entire page, and sort out the results later based on what button is pressed.
  2. Use Javascript/AJAX to gather any data you like, and push it up any way you like. You could even do some of this in real-time (like when a check box is checked) and not cause a postback of the page.

Of course, there's pros and cons to each, but that's the nature of the beast.

like image 139
Lusid Avatar answered Oct 14 '22 19:10

Lusid


You could do it on the client-side with a combination of Ajax and Javascript...

<SCRIPT language="JavaScript">
function submitforms()
{
        new Ajax.Request(formUrl,
        {
            parameters: $H({param1:value,param2:value}).toQueryString(),
            method: 'post',
            onSuccess: function(transport) {
               document.myform.submit();
            }
        }
}
</SCRIPT> 
like image 29
matt_dev Avatar answered Oct 14 '22 18:10

matt_dev