MVC razor Form mit mehreren verschiedenen Schaltflächen senden?

Eine Razor-Ansicht hat 3 Schaltflächen innerhalb eines Formulars. Alle Aktionen der Schaltflächen benötigen Formularwerte, die im Wesentlichen Werte aus Eingabefeldern sind.

Jedes Mal, wenn ich klicken Sie auf eine der Schaltflächen es umgeleitet mich zu Standard-Aktion. Können Sie bitte führen, wie ich Form zu verschiedenen Aktionen basierend auf Schaltfläche drücken einreichen kann?

Ich weiß Ihre Zeit, Anleitung und Hilfe wirklich zu schätzen.

Lösung

Sie können auch dies versuchen:

<input type="submit" name="submitbutton1" value="submit1" />
<input type="submit" name="submitbutton2" value="submit2" />

Dann rufen Sie in Ihrer Standardfunktion die gewünschten Funktionen auf:

if( Request.Form["submitbutton1"] != null)
{
    // Code for function 1
}
else if(Request.Form["submitButton2"] != null )
{
    // code for function 2
}
Kommentare (3)

in der Ansicht

Kommentare (0)

Sie können JS + Ajax verwenden. Wenn Sie zum Beispiel eine Schaltfläche haben, können Sie ihr sagen, was sie beim Klick-Ereignis tun muss. Hier der Code:

 <input id="btnFilterData" type="button" value="myBtn">

Hier Ihre Schaltfläche in HTML: Im Skript-Abschnitt müssen Sie diesen Code verwenden (Dieser Abschnitt sollte sich am Ende des Dokuments befinden):

<script type="text/javascript">
$('#btnFilterData').click(function () {
    myFunc();
});
</script>

Und schließlich müssen Sie eine Ajax-Funktion hinzufügen (in einem anderen Script-Abschnitt, der am Anfang des Dokuments stehen sollte):

function myFunc() {
    $.ajax({
        type: "GET",
        contentType: "application/json",
        url: "/myController/myFuncOnController",
        data: {
             //params, which you can pass to yu func
        },
        success: function(result) {

        error: function (errorData) {

        }
    });
};
Kommentare (1)