Как я могу назвать форму с помощью Html.BeginForm()?

Как мне указать имя формы в ASP.NET MVC с помощью Html.BeginForm()? Я хочу только имя, а не имя действия или контроллера, потому что я хочу опубликовать его через Javascript. Я думаю, что это должно быть что-то вроде Html.BeginForm(id = "frm").

Я попробовал следующее:

Html.BeginForm(null,null,new{id="frm",name="frm})

Html.BeginForm(new{@id="frm",@name="frm})

Но приведенный выше код производит вывод следующим образом:

<form action="/Main/Index/Id?name=Id" method="post">

Ответ 1

Html.BeginForm(null, null, FormMethod.Get, new { name = "frm", id = "frm" })

Вам нужно поймать форму submit с помощью вашего JavaScript

Ответ 2

Используя MVC2, это то, что сработало для меня:

<% using (Html.BeginForm("Index", "Home", null, FormMethod.Post, new {@id = "myForm", @name = "myForm"})) {%>

Ответ 3

@HTML.BeginForm("Target-ViewName where you want to post the page","Controller Name",new {@name="Name of the Form", id="ID of the Form"}) 
{ //form here
}

Ответ 4

Взято из этого ответа: Как передать идентификатор с помощью Html.BeginForm()?

Не можете ли вы просто:

Html.BeginForm(new {@id="Id", @name="Id"}); 

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