Я пытаюсь получить выбранное значение выпадающего списка в @ Html.ActionLink, но пока не повезло. Требование состоит в том, чтобы динамически извлекать таблицу и иметь раскрывающийся список для действий, которые могут быть предприняты против строки. Мне нужно выбрать действие, а затем нажать кнопку отправки, идентификатор строки и выбранное значение действия должны быть отправлены на контроллер. Вот фрагмент кода, который у меня есть.Получить выбранное значение Dropdownlist в ActionLink (MVC 5)
@foreach (AdsViewModel ad in Model)
{
<tbody>
<tr>
<td>@ad.Row_Id</td>
<td class=" "> @ad.Description </td>
<td class=" "> @ad.Valid_To.ToShortDateString() </td>
<td><span class="label label-sm label-success label-mini"> @ad.Status </span></td>
<td>@Html.DropDownList("actions", ad.Actions) </td>
<td>@Html.ActionLink("Submit", "AdAction", new {adId = ad.Row_Id, action = ad.Actions.SelectedValue}) </td>
</tr>
</tbody>
}
При нажатии на Submit ActionLink, я получаю Адид но никаких действий не возвращается из DropDownList.
Ваша помощь очень ценится. Edit: Вот AdsViewModel
public class AdsViewModel
{
public string Row_Id { get; set; } //Transaction Number
public string Description { get; set; } //Trasaction Description
public DateTime Valid_To { get; set; } //Expiry
public string Status { get; set; } //Object Status Code
public SelectList Actions { get; set; }
}
Это, как выбрать список заполняется в контроллере
List<SelectListItem> items = new List<SelectListItem>();
items.Add(new SelectListItem() { Text = "View", Value = "001" });
items.Add(new SelectListItem(){Text = "Modify", Value = "002"});
model.Actions = items;
Ну, ad.Actions является выпадающим списком и содержит несколько значений. Он по-прежнему просто не извлекает выбранное значение выпадающего списка. –
Не могли бы вы обновить свой вопрос классом, который вы используете для своей модели и AdsViewModel. –
Обновлено, см. Редактировать. –