Нет, это невозможно без JavaScript.Особенно, если вы хотите, чтобы страница переходила по соответствующему адресу, когда пользователь выбирает элемент в этом раскрывающемся списке.Если вы не хотите использовать javascript, вы можете разместить раскрывающийся список внутри HTML <form>
, но тогда пользователю придется нажимать кнопку отправки для навигации.Вот пример того, как вы можете достичь этого с помощью javascript:
@Html.DropDownList(
"url",
new SelectList(new[]
{
new SelectListItem { Text = "About", Value = Url.Action("About", "Home") },
new SelectListItem { Text = "MyPage", Value = Url.Action("Index", "Home") },
new SelectListItem { Text = "APage", Value = Url.Action("AnyPage", "Home") },
}, "Value", "Text"),
"-- Pick an URL ---",
new { id = "urlddl" }
)
, а затем, используя jquery, вы можете подписаться на событие изменения этого выпадающего списка и перейти к соответствующему URL:
$(function() {
$('#urlddl').change(function() {
var url = $(this).val();
if (url != null && url != '') {
window.location.href = url;
}
});
});