Форма, которая подчиняется тому же действию, с идентификатором - PullRequest
2 голосов
/ 03 февраля 2011

Я пытаюсь сделать что-то, что кажется очень простым: создать форму, которая отправляет на тот же URL, с которого она была запрошена, с идентификатором.

Если бы я не заботился об идентификаторе, я мог бы сделать:

<% using(Html.Form()) { %>
    <!-- stuff -->
<% } %>

Но так как я хочу идентификатор, я должен использовать другую перегрузку.

Я бы хотел что-то вроде:

<% using(Html.Form(some, args, new {id="myAwesomeForm"})) { %>
    <!-- stuff -->
<% } %>

Я не могу просто жестко закодировать действие и контроллер, потому что форма используется в нескольких разных местах. Иногда URL будет иметь параметры (/items/edit/1, а в других случаях он не будет /items/create)

Должен быть какой-то невероятно простой способ сделать это, чтобы я почувствовал себя идиотом, когда увижу это. Итак, что это?


Уточнение : Я имею в виду идентификатор элемента HTML, как в <form action="/my/action[/possible arguments]" id="myAwesomeForm"></form>

Ответы [ 2 ]

2 голосов
/ 03 февраля 2011

Использовать ноль для действия и контроллера; они будут заполнены из текущего действия и контроллера.

 <% using (Html.BeginForm( null, null, null, FormMethod.Post, new { id = 3 } )) { %>

 <% } %>
0 голосов
/ 03 февраля 2011

Просто используйте первую перегрузку (routeValues ​​As Object)

Принимает текущие, Имя области , Имя контроллера и Имя действия параметры. Post - метод формы по умолчанию.

<%
    Using Html.BeginForm(New With {.id = 3})

    End Using
%>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...