Как сделать ссылку действия созданной бритвой make POST? - PullRequest
0 голосов
/ 25 сентября 2018

Я использую mvc 5 в своем проекте.

Я создаю ссылку действия, используя бритву, которая отправляет некоторые данные в метод действия с помощью GET mthod.

Вот ссылка действия:

<tbody>
    @foreach (var item in Model)
         {
               <tr><td>@Html.ActionLink(item.Name, "About", "Home", item, new { @class = "btn btn-featured btn-white height-30 width-100" })</td></tr>
         }
 </tbody>

Мой вопрос: как изменить ссылку на созданное действие выше, чтобы она отправляла данные методом POST в метод действия?

1 Ответ

0 голосов
/ 25 сентября 2018

Вы используете якорную ссылку HTML, которая всегда выполняет действие GET из браузера.

Если вам требуется сделать сообщение, вы можете использовать один из следующих подходов:

1.Ajax Post

@Ajax.ActionLink("About", "Home", new { id = "myForm", @class = "btn btn-featured btn-white" }, new AjaxOptions { HttpMethod = "POST" })

Для использования @Ajax вам необходимо добавить ссылку на nuget из: https://www.nuget.org/packages/Microsoft.jQuery.Unobtrusive.Ajax/

Это добавит новые сценарии в ваш проект (jquery.unobtrusive-ajax.min.js)

Без этого он продолжит использовать GET в качестве вашего метода.

2.Форма Отправить сообщение

@using (Html.BeginForm("About", "Home", FormMethod.Post, new { id = "myForm", @class = "btn btn-featured btn-white" }))
{
   <a href="javascript:document.getElementById('myForm').submit()">
      <span>Submit</span>
   </a>
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...