Wie schließe ich mit einem Link in ASP.Net MVC ein Formular?
-
20-08-2019 - |
Frage
Ich habe ein HTML-Formular, und ich habe eine Controller-Aktion, die die POST-Anforderung akzeptiert. Alles funktioniert mit einer normalen Submit-Button, aber ich mochte das Formular mit einem Link unterbreiten ( -tag) statt, in der Lage sein, um die Formatierung zu steuern. Gibt es eine Möglichkeit dies schön gebaut in die ASP.NET MVC-Framework zu tun, oder soll ich meine eigene Erweiterungsmethode schreiben? Ist es überhaupt möglich, dies zu tun, ohne Javascript (Ich werde AJAX in der Zukunft, aber es hat ohne arbeiten).
Lösung
Hier ist ein vollständiges Beispiel. Beachten sie, dass dieses Beispiel etwas tut, ziemlich wichtig. es hat einen Rückfall für Browser mit JavaScript deaktiviert
Andere Tipps
Wenn Sie Javascript und jQuery ist dies effektiv aktiviert ersetzt alle submit-Buttons mit Links:
$("input:submit").hide().each(function (index, Element) {
var elm = $(Element);
elm.after($("<a href=#>" + elm.val() + "</a>")
.click(function () { elm.click(); })
);
});
Basierend auf Post verknüpft in der akzeptierte Antwort.
Ich bin mir nicht bewusst, Helfer und soweit ich weiß, es ist nicht möglich, ohne die Verwendung von Javascript, ein Formular mit einem Anker-Tag zu übermitteln.
Sie können über einen Link ( Tag) ohne Javascript nicht 'ein Formular einreichen'. Die Javascript wird eine Standard-POST-Anforderung (gleiche wie das Klicken auf eine Form Submit-Button) hinter den Kulissen erzeugen.
Es gibt andere Abhilfen für die mit JS deaktiviert ist, schauen, was @Craig Stuntz vorgelegt.