Ich habe ein Basisformular, für das ich Schaltflächen innerhalb des Formulars behandeln möchten, durch Aufruf der ActionResult
-Methode in der zugeordneten Klasse Controller
der Ansicht. Hier ist die folgende HTML5 Code für das Formular:HTML5-Formularaktion mit Controller ActionResult-Methode in ASP.NET MVC verbinden 4
<h2>Welcome</h2>
<div>
<h3>Login</h3>
<form method="post" action= <!-- what goes here --> >
Username: <input type="text" name="username" /> <br />
Password: <input type="text" name="password" /> <br />
<input type="submit" value="Login">
<input type="submit" value="Create Account"/>
</form>
</div>
<!-- more code ... -->
Der entsprechende Controller
Code ist der folgende:
[HttpPost]
public ActionResult MyAction(string input, FormCollection collection)
{
switch (input)
{
case "Login":
// do some stuff...
break;
case "Create Account"
// do some other stuff...
break;
}
return View();
}
Ich versuchte Methode 2 mit dem URL-Helfer, aber ich denke, die Syntax, die ich fand, war MVC3-spezifisch und es hat nicht funktioniert. Dieser passt perfekt zu meinen Bedürfnissen. Vielen Dank! – dtg
@Dylan: Weil es fehlt) Klammer in Html.BeginForm Linie. – Muflix
Wie hatten Sie sowohl öffentliche ActionResult Delete (int ID) 'und' [HttpPost] öffentlichen ActionResult Delete (int ID) '? Gibt es nicht eine Namenskollision zwischen den beiden? – Alexander