Handling multiple submit button in asp.net mvc

Total Post:88

 1329  View(s)
Rate this:
Is there some easy way to handle multiple submit buttons from the same form? Example.

Html.BeginForm("MyAction", "MyController",FormMethod.Post); %>
<input type="submit" value="Send" />
<input type="submit" value="Cancel" />
<%Html.EndForm(); %>

Any idea how to do this in ASP.NET Framework Beta? All examples I've googled for have single buttons in them.

  1. Post:194

    Re: Handling multiple submit button in asp.net mvc

    Here is a mostly clean attribute-based solution to the multiple submit button issue based heavily on the post and comments from.

    AllowMultiple = false, Inherited = true)]
            public class MultipleButtonAttribute : ActionNameSelectorAttribute
                public string Name { get; set; }
                public string Argument { get; set; }
                public override bool IsValidName(ControllerContext controllerContext, string actionName, MethodInfo methodInfo)
                    var isValidName = false;
                    var keyValue = string.Format("{0}:{1}", Name, Argument);
                    var value = controllerContext.Controller.ValueProvider.GetValue(keyValue);
                    if (value != null)
                        controllerContext.Controller.ControllerContext.RouteData.Values[Name] =Argument;
                        isValidName = true;
                    return isValidName;


    <form action="" method="post">
     <input type="submit" value="Save" name="action:Save" />
     <input type="submit" value="Cancel" name="action:Cancel" />

    and controller:

            [MultipleButton(Name = "action", Argument = "Save")]
            public ActionResult Save(MessageModel mm) { ... }
            [MultipleButton(Name = "action", Argument = "Cancel")]
            public ActionResult Cancel(MessageModel mm) { ... }   

      Modified On Apr-05-2018 06:58:41 AM