#asp.net-mvc-3
#asp.net-mvc-3
Вопрос:
это мое представление
@{ Html.BeginForm("Index");
<fieldset>
<legend>emp</legend>
<div class="display-label">name</div>
<div class="display-field">
<!-- @Html.DisplayFor(model => model.name) -->
@Html.DropDownList("gett","--SELECT--")
</div>
<div class="display-label">address</div>
<div class="display-field">
@Html.DropDownList("address","--SELECT--")
</div>
</fieldset>
<p>
<input type="submit" value="submit" />
@Html.ActionLink("Back to List", "Index")
</p>
}
я хочу отправить информацию об этом представлении в действие «Index» домашнего контроллера. Но я не могу получить доступ к индексу, нажав кнопку отправки. всякий раз, когда я нажимаю кнопку отправки, никаких действий не выполняется. Пожалуйста, проверьте мой код. и подскажите мне, что я должен добавить, чтобы перенаправить мои значения, выбранные в индексе выпадающего списка.
Комментарии:
1. Я обнаружил, что причина отказа от пересылки из представления в индекс заключается в том, что мы также должны записать имя контроллера. это @{ Html.BeginForm(«Index»,»Home»); } является правильным способом передачи. Теперь, пожалуйста, скажите мне, как можно использовать значения из этого выпадающего списка в контроллере индекса.?
2. Ни у кого нет ответа на этот вопрос ..?
Ответ №1:
Ваш синтаксис неверен
http://msdn.microsoft.com/en-us/library/system.web.mvc.html.mvcform.aspx
Вы должны использовать
используя (Html.BeginForm("Index")) {
и это при условии, что вы переходите к текущему методу индексации контроллеров, в противном случае вам также необходимо указать имя контроллера
используя (Html.BeginForm("Index", "WhateverControllerName")) { }
поскольку у вас нет html.beginform в использующем stmt, я не думаю, что ваш конечный тег формы отображается.