Obsługuj użytkownika naciskając klawisz „Enter” w witrynie sieci Web ASP.NET MVC
Pracuję na stronie internetowej ASP.NET MVC, która ma wiele przycisków przesyłania. to znaczy
<code> <input type="submit" name="SubmitButton" value="Reset" /> <input type="submit" name="SubmitButton" value="OK" /> <input type="submit" name="SubmitButton" value="Back" /> </code>
Muszę zezwolić użytkownikom na szybkie przesłanie formularza, naciskając klawisz „Enter”. Wydaje się, że standard HTML określa, że pierwszy przycisk przesyłania zostanie przyjęty, jeśli użytkownik naciśnie klawisz „Enter”. Muszę jednak zrobić drugi przycisk (tj. Przycisk „OK”), przycisk domyślny i ze względów, o których nawet nie chcę rozmawiać, zmiana kolejności przycisków nie jest opcją.
Wyszukałem hasło i znalazłemten post o używaniu Page.Form.DefaultButton w ASP.NET, ale to nie działa z ASP.NET MVC.
Próbowałem również następującego rozwiązania javascript, podczas gdy działa w Chrome, ale nie działa w IE6
<code> $('body').keypress(function(e) { if (e.which === 13) { $("input[value='OK']").trigger('click'); } }); </code>
Mogę wymyślić kilka naprawdę ekstremalnych rozwiązań, takich jak przechodzenie przez wszystkie kontrolki w formie dołączania do nich powyższej funkcji. Nie sądzę jednak, aby było to bardzo fajne rozwiązanie, więc zastanawiam się, czy ktoś ma lepsze rozwiązanie?