/ / Jak wykryć, który przycisk przesyłania został kliknięty w asp.net (mvc) - html, asp.net-mvc, przycisk, wprowadzanie, wysyłanie

Jak wykryć, który przycisk przesyłania został kliknięty w asp.net (mvc) - html, asp.net-mvc, przycisk, input, submit

Przeczytałem wiele odpowiedzi, które używają wartości wejściowej typu wysyłania, ale moja kolekcja przycisków wejściowych musi mieć ten sam tekst. Inni używają Javascript i staram się tego również unikać.

<input type="submit" value="Press This" name="submitButton" />

Nie działa, ponieważ wszystkie muszą mieć nazwę „Naciśnij to”.

<button type="submit" value="12" name="submitButton">Press This</button>

Nie działa, ponieważ nie podaje wartości.

Czy jest jakiś sposób na zrobienie tego <button> prześlij wartość lub zmień tekst <input type="submit"> więc wszyscy mówią to samo na stronieróżne wartości? A może nawet ukrycie wartości liczbowej w atrybucie wartości elementu wejściowego, a następnie usunięcie „Naciśnij to” przed użyciem wartości?

Być może za pomocą <input type="image" value="12" /> z obrazem, który mówi „Naciśnij to”?

Edytuj: Próbowałem <input type="image"> i nie działa. Przekaże formularz, ale nie używa atrybutu name, aby przejść do poprawnego działania na kontrolerze.

Edit2: Powinienem też dodać, że liczba przycisków przesyłania jest dynamiczna i dlatego nie mogę podać im wszystkich różnych nazw, a następnie zobaczyć, który parametr w kontrolerze miał przekazaną wartość. Chyba że jest jakiś sposób, aby to zrobić dla nieznanej liczby przycisków ...

Odpowiedzi:

11 dla odpowiedzi nr 1

Twoje przyciski powinny wyglądać tak:

<button name="button" value="12">Press This</button>
<button name="button" value="13">Press That</button>

po prostu weź je w akcji

public ActionResult MyAction(string button)
{
if (button == "12"){
//Do this
}

if (button == "13"){
//Do that
}
}