根据下拉选择过滤div - 有一种简单的方法吗?

时间:2017-06-05 14:22:41

标签: jquery wordpress

我有一个由divs组成的网格,这些div具有wordpress页面ID作为类,它们也有公共类' set'。

我有一个下拉列表选项,其中包含每个页面<option>,其中页面ID为值。

我希望能够在下拉菜单中选择一个页面标题,并在网格中添加任何相应的div,其中包含&#39;耐心 - pageID&#39;只有可见,所有其他隐藏。

$('#filterPatient_dropdown').change(function() {
    var patientID = $("#filterPatient_dropdown option:selected").val();
    $('.set').hide();
    if ($(this).val() == 'patient'+patientID) {
        $(this).show();
    }
});

当我点击某个选项时,这只会隐藏所有div。

我如何执行一个简单但有效的过滤器,我点击一个选项,其中值是页面ID,它找到所有div的匹配类,只显示这些?

2 个答案:

答案 0 :(得分:3)

这个怎么样?

$('#filterPatient_dropdown').change(function() {
    var patientID = $(this).find("option:selected").val();
    $('.set').hide();
    $('div.patient-'+patientID).show();
});

答案 1 :(得分:1)

您在.show()上呼叫$(this),在这种情况下是下拉列表,而不是div。尝试使用$('.patient-' + patientID).show();