Ten post nie zamierza odpowiedzieć na Coppermill, bo zostały wysłuchane dawno temu. Mój post będzie pomocny dla tych, którzy będą szukać takiego rozwiązania. Przede wszystkim muszę powiedzieć, że "rozwiązanie WDuffy jest całkowicie poprawne" i działa dobrze, ale moje rozwiązanie (w rzeczywistości nie moje) będzie używane w innych elementach i sprawi, że warstwa prezentacji będzie bardziej niezależna od kontrolera (ponieważ kontroler zależy od "wartość", która służy do wyświetlania etykiety przycisku, funkcja ta jest ważna w przypadku innych języków.).
Oto moje rozwiązanie, dać im różne nazwy, jak:
</p> <input type="submit" name="buttonSave" value="Save"/> <input type="submit" name="buttonProcess" value="Process"/> <input type="submit" name="buttonCancel" value="Process"/> </p>
I trzeba podać nazwy przycisków jako argumenty w akcji jak poniżej:
public ActionResult Register(string buttonSave, string buttonProcess, string buttonCancel){if (buttonSave!= null)
{//save is pressed
}
if (buttonProcess!= null)
{//Process is pressed
}
if (buttonCancel!= null)
{//Cancel is pressed
}
gdy użytkownik wysyła stronę używając jednego z przycisków, tylko jeden z argumentów będzie miał wartość. Myślę, że będzie to pomocne dla innych.
Dlaczego nie wystarczy dodać onclick zdarzenia do tych przycisków, które udają się do własnej wywołania AJAX, która trafi do ich odpowiednich metod? tj: ''? – ragerory