MVC вернуть поля в контроллер - PullRequest
0 голосов
/ 14 октября 2019

У меня есть контроллер для извлечения и возврата значений для моего раскрывающегося списка, и секунда, когда при выборе параметра из раскрывающегося списка используются значения (заголовок и идентификатор) в запросе API.

Контроллеры

public ActionResult GetEpics()
        {
            //Code to retrieve list
            Epics = new GetEpicsViewModel();
            Epics.Epics = epicsList;

            return View(Epics);
        }



 [HttpPost]
            public ActionResult Build(GetEpicsViewModel epic)

            {
                GetEpicsViewModel epicTest = epic;
                //API Request
                return View();
            }

Это отображается в моем раскрывающемся списке, как показано ниже:

Просмотр

 @using (Html.BeginForm("Build", "GetEpics", FormMethod.Post))
                {
                    <label for="input_OutputType"> Process: @Html.DropDownListFor(model => model.Id, new SelectList(Model.Epics, "Id", "Title")) </label>                    
                    <input type="submit" value="Submit" />
                }

Это прекрасно работает, но как мне тогда поступитьпередать заголовок и идентификатор моему контроллеру? Я могу передать удостоверение личности через штраф, но не могу понять, как передать название.

Снимок экрана

Модели

public class DevOpsEpic
    {

        public string Id { get; set; }            
        public string Title { get; set; }            
        public string Description { get; set; }  

    }

и

 public class GetEpicsViewModel
    {
        public string Id { get; set; }
        public string Title { get; set; }
        public List<DevOpsEpic> Epics { get; set; }
    }

Понимают, что это, вероятно, очень простой ответ, но простоне могу понять это!

1 Ответ

0 голосов
/ 14 октября 2019

Для этого вы можете использовать jQuery, поэтому при изменении выпадающего списка установите значение заголовка в скрытом файле.

@using (Html.BeginForm("Build", "GetEpics", FormMethod.Post))
  {
       <label for="input_OutputType"> Process: @Html.DropDownListFor(model => model.Id, new SelectList(Model.Epics, "Id", "Title"),new { name = "Id" }) </label>
       <input type="hidden" id="Title" name="Title" />
       <input type="submit" value="Submit" />
  }

$('#dropdownId').change(function(){

   $('#Title').val($('#dropdownId option:selected').text());

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