У меня есть опция выбора, которая, если выбрана, должна показывать соответствующие разделы. По умолчанию все установлено на display:none
.Ссылка на мой класс css как объекты?
В этом случае, если выбран июнь, я хочу, чтобы он показывал все div, которые имеют класс june
.
$('#list').change(function() {
if ($(this).val() == "june") {
$('.june').css('display', 'block')
}
});
Код работает как следует. Однако я хотел бы написать это более эффективно, потому что планирую добавить дополнительные месяцы. С этой целью, как бы я идти о делать что-то вдоль линий этого:
$('#list').change(function() {
if ($(this).val() == {
thischosenmonth
}) {
$('.{thischosenmonth}').css('display', 'block')
}
});
где thischosenmonth
совпадает с месяцем, выбранного пользователем?
Вы можете использовать переменные внутри селекторов jQuery! $ ('.' + UserInput) .css ('display', 'block') Как вы извлекаете пользовательский ввод? – Hodrobond
Как насчет '$ ('.' + $ (This) .val()). Show();' внутри вашего события изменения? Вместо использования IF для каждого из них? Если все они имеют один и тот же класс, например 'class = 'june month'', вы можете называть' $ ('. Month '). Hide() 'сначала, чтобы скрыть все остальные месяцы, которые не применяются. –