Кнопка HTML, вызывающая контроллер MVC и метод Action - PullRequest
173 голосов
/ 24 марта 2010

Я знаю, что это неправильно, но для иллюстрации я хотел бы сделать что-то вроде этого:

<%= Html.Button("Action", "Controller") %>

Моя цель - создать кнопку HTML, которая будет вызывать метод действия моего контроллера MVC.

Ответы [ 17 ]

4 голосов
/ 11 января 2017

Когда вы реализуете действие в контроллере, используйте

return View("Index");

или

return RedirectToAction("Index");

где страница Index.cshtml (или страница, которая генерирует действие) уже определена. В противном случае вы, вероятно, столкнетесь с ошибкой «представление или его мастер не найдены ...».

Источник: https://blogs.msdn.microsoft.com/aspnetue/2010/09/17/best-practices-for-asp-net-mvc/

3 голосов
/ 13 ноября 2017

лучше использовать этот пример

<a href="@Url.Action("Register","Account", new {id=Item.id })"
class="btn btn-primary btn-lg">Register</a>
3 голосов
/ 13 августа 2015

Итак, я использую Razor, но это тоже будет работать. Я в основном оборачиваю кнопку в ссылке.

<a href="Controller/ActionMethod">
    <input type="button" value="Click Me" />
</a>
1 голос
/ 21 октября 2017

ОК, вам нужно передать действие кнопке и вызвать ее, когда происходит щелчок, оно не обязательно должно быть внутри, вы можете использовать HTML onclick на кнопка для запуска при нажатии кнопки ...

<button id="my-button" onclick="location.href='@Url.Action("YourActionName", "YourControllerName")'">Submit</button>
1 голос
/ 14 мая 2014

Если вы находитесь на домашней странице ("/ Home / Index") и хотите вызвать действие Index на контроллере администратора, вам подойдет следующее.

<li><a href="/Admin/Index">Admin</a></li>
0 голосов
/ 05 февраля 2019

Используйте этот пример:

<button name="nameButton" id="idButton" title="your title" class="btn btn-secondary" onclick="location.href='@Url.Action( "Index","Controller" new {  id = Item.id })';return false;">valueButton</button>
0 голосов
/ 21 декабря 2017

лучше использовать этот пример .

Вызов действия и контроллер с помощью ActionLink:

@Html.ActionLink("Submit", "Action", "Controller", route, new { @class = "btn btn-block"})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...