У меня есть простая проблема, которая меня просто ускользает. Я видел множество примеров, но просто не могу пощупать правильный код. Проблема: мне нужно показать текстовое поле ввода, только если в раскрывающемся списке выбрано «Другое».MVC4 Показывать поле описания при выборе «другого» из выпадающего списка
Мои JavaScript:
@{
ViewBag.Title = "Create Client";
var showGenderDescription = false;
var showSettingDescription = false;
}
<script src="~/Scripts/jquery-2.0.3.js"></script>
<script>
$(function() {
$('#GenderId').change(function() {
if ($("#GenderId").val() == 3) {
showGenderDescription = true;
}
});
$("#SettingId").change(function() {
if ($("#SettingId").val() == 1) {
showGenderDescription = true;
}
});
});
</script>
Мой Просмотр Код:
@using (Html.BeginForm())
{
<div class="editor-label">
@Html.LabelFor(model => model.GenderId, "Gender")
</div>
<div class="editor-field">
@Html.DropDownList("GenderId", (SelectList)ViewBag.GenderId, "--Select One--", new { id = "GenderId"})
@Html.ValidationMessageFor(model => model.GenderId)
</div>
@if(showGenderDescription)
{
<div class="editor-label">
@Html.LabelFor(model => model.GenderDescription)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.GenderDescription)
@Html.ValidationMessageFor(model => model.GenderDescription)
</div>
}
}
DropDownList корректно работает на пост обратно к контроллеру, но я хотел бы показать окно описания ввода. Не видели ничего там, что бы дублировать этот тип поведения (не в моих поискахх). Как всегда любая помощь была бы оценена!
@Vignesh Хотя ваш ответ тоже правильно с помощью CSS я должен дать это одно к McGarnagle потому что он добрался до него первым, но я его помечаю, потому что я уверен, что кто-то еще найдет его полезным. – jbolt
Когда страница загружается впервые, поле описания отображается и исчезает только тогда, когда я делаю выбор в ddl чего-то другого, кроме «Другого». В любом случае, чтобы скрыть это с самого начала? – jbolt
Решил проблему с помощью следующего кода: $ (window) .bind ("load", function (event) { $ (". Gender-description"). Hide(); }); – jbolt