#c# #asp.net-mvc-4
#c# #asp.net-mvc-4
Вопрос:
Я запустил приложение MVC4 в VS2012 и нуждаюсь в отправке при изменении выбора в выпадающем списке, делая это:
@Html.DropDownList("FindProject", "All", new{onchange = "document.getElementById('TheForm').submit();"})
но браузер сообщает:
Сообщение об ошибке компилятора: CS1928: ‘System.Web.Mvc.HtmlHelper>’ не содержит определения для ‘выпадающего списка’ и перегрузки наилучшего метода расширения ‘System.Web.Mvc.Html .Выберите значения.Выпадающий список(System.Web.Mvc.HtmlHelper, строка, System.Коллекции.Общий.IEnumerable, object)’ имеет некоторые недопустимые аргументы
Не учитывая: new{onchange = "document.getElementById('TheForm').submit();"}
удаляет ошибку, но также исключает любую возможность отправки при изменении…
Что не так, в сети есть множество примеров, показывающих, что это работает?
Что я могу сделать / изменить?
Комментарии:
1. Ожидается, что вторые параметры будут
IEnumerable<SelectListItem>
, а не (строка)"All"
.2. Почему это работает без — вы знаете быструю альтернативу по умолчанию?
3. Какие
<option>
теги вам нужно иметь в этом раскрывающемся элементе?4. Заключены ли элементы формы в форму? Если да, проверьте эту ссылку
5. Спасибо за подсказку обо «Всех» — это было скопировано из сети и заменено на: (SelectList)ViewData[«FindProject»] и желаемое изменение теперь: new{onchange = «submit();»}