У меня есть форма с выпадающим списком. На основе выбранного элемента в раскрывающемся списке появляется соответствующий список chekbox и исчезает другой checkboxlist. Как вы можете это сделать, используя JQuery?
Здесь Javascript, который вы должны легко адаптировать к вашим конкретным элементам:
$('#dropdownlist').on('change', function () {
if ($(this).val()) {
if($(this).val() === "some value") {
$('#somecheckboxgroup').show();
$('#someothercheckboxgroup').hide();
}
else if($(this).val() === "some other value") {
$('#somecheckboxgroup').hide();
$('#someothercheckboxgroup').show();
}
}
});
По сути, вы просто хотите запускать функцию каждый раз, когда раскрывающийся список изменяется, и в нем проверяет текущее выбранное значение, а затем запускает нужный код на основе наблюдаемого значения.
Вот действительно простой пример: http://jsfiddle.net/jayblanchard/G8z3r/. Код можно укоротить, просто используя разные селекторы, id и классы, но я хотел бы дать вам базовую идею о том, как это работает.
$('select[name="showbox"]').change(function() {
if('foo' == $(this).val() ) {
$('div').hide(); // make sure all divs are hidden
$('#checkboxA').show(); // show the right one
} else if ('bar' == $(this).val() ) {
$('div').hide(); // make sure all divs are hidden
$('#checkboxB').show(); // show the right one
} else if ('both' == $(this).val() ) {
$('div').show(); // sow all divs
} else {
$('div').hide();
}
});