Javascript 使用下拉列表筛选列表(ul>;li)
下面的代码根据所选单选按钮()过滤列表 如何更改它,以便使用下拉列表对其进行筛选(选择>选项标记)Javascript 使用下拉列表筛选列表(ul>;li),javascript,jquery,list,drop-down-menu,filter,Javascript,Jquery,List,Drop Down Menu,Filter,下面的代码根据所选单选按钮()过滤列表 如何更改它,以便使用下拉列表对其进行筛选(选择>选项标记) A B A和B A. B A和B A1 A2 B1 B2 $('input')。单击(函数(){ 变量选择器=$('input:radio').map(函数(){ 返回this.checked?'.+this.id:''; }).get().join(“”); 控制台日志(选择器); var all=$('li[class^=“”]”); if(选择器长度) all.hide().filte
A
B
A和B
A.
B
A和B
- A1
- A2
- B1
- B2
$('input')。单击(函数(){
变量选择器=$('input:radio').map(函数(){
返回this.checked?'.+this.id:'';
}).get().join(“”);
控制台日志(选择器);
var all=$('li[class^=“”]”);
if(选择器长度)
all.hide().filter(selector.show();
否则全部显示();
});
您需要在“选择”标记中添加一个侦听器。查看规范。像这样吗
$('select').on('change', function (e) {
var selector = "."+$(this).val();
console.log(selector);
var all = $('li[class^="_"]');
if(selector.length)
all.hide().filter(selector).show();
else all.show();
});
把问题摆在前面,改进措辞,避免重复
$('select').on('change', function (e) {
var selector = "."+$(this).val();
console.log(selector);
var all = $('li[class^="_"]');
if(selector.length)
all.hide().filter(selector).show();
else all.show();
});
$('select').on('change', function (e) {
var selector = $('option').map(function(){
return this.selected ? '.' + this.value : '';
}).get().join('');
console.log(selector);
var all = $('li[class^="_"]');
if(selector.length)
all.hide().filter(selector).show();
else all.show();
});