Javascript 使用jQuery筛选div

Javascript 使用jQuery筛选div,javascript,jquery,html,Javascript,Jquery,Html,我想用输入字段过滤一些div: 我想在开始时显示所有div,当用户键入输入字段时,按 约翰·多伊 12安 049494 费希杜病人 塞缪尔·佩洛 12安 049494 费希杜病人 假设您需要使用startsWith进行筛选 使用类hide隐藏元素 在每个.body元素上循环 使用此选择器查找元素 使用startsWith功能比较文本 看看这个代码片段。 约翰·多伊 $('#myInput')。在('input',function()上{ var enteredValue=$(this.

我想用输入字段过滤一些div: 我想在开始时显示所有div,当用户键入输入字段时,按


约翰·多伊

12安

049494

费希杜病人 塞缪尔·佩洛

12安

049494

费希杜病人
  • 假设您需要使用
    startsWith
    进行筛选
  • 使用类
    hide
    隐藏元素
  • 在每个
    .body
    元素上循环
  • 使用此选择器查找元素
  • 使用
    startsWith
    功能比较文本
看看这个代码片段。 约翰·多伊

$('#myInput')。在('input',function()上{ var enteredValue=$(this.val(); $('.body')。每个(函数(){ var$parent=$(这是); $(this).find('[class=“name”]')。each(function(){ if($(this).text().startsWith(enteredValue)){ $parent.removeClass('hide'); }否则{ $parent.addClass('hide'); } }) }); });
.hide{
显示:无
}

约翰·多伊

12安

049494

费希杜病人 塞缪尔·佩洛

12安

049494

费希杜病人
此解决方案使用包含输入值的名称筛选div。过滤不区分大小写。此外,没有设置任何类,但如果需要,可以添加该类。只需将
$card.show()
更改为
$card.addClass('visible')
,并将
$card.hide()
更改为
$card.removeClass('visible')

$(文档).ready(函数(){
$('.filter')。在('input',function()上{
var$this=$(this);
变量$cards=$('.card');
$filteredCards=$cards.each(函数(i,卡){
var$卡=$(卡);
var name=$card.find('.name').first();
name=name.text().toLowerCase();
if(name.indexOf($this.val().toLowerCase())!=-1){
$card.show();
}否则{
$card.hide();
}
});
});
});

约翰·多伊

12安

049494

费希杜病人 塞缪尔·佩洛

12安

049494

费希杜病人
您能分享到目前为止您编写的javascript代码吗?