Javascript 如何排除<;ul>;元素在jquerykeyup实时搜索期间?
我不熟悉javascript/jquery,正在尝试找出如何排除/过滤ul id=“#modulelist”下的ul class=“下拉菜单”。我仍然希望能够搜索不在ul class=“下拉菜单”下的li元素。下面是我的PHP和jquery代码片段Javascript 如何排除<;ul>;元素在jquerykeyup实时搜索期间?,javascript,php,jquery,html,css,Javascript,Php,Jquery,Html,Css,我不熟悉javascript/jquery,正在尝试找出如何排除/过滤ul id=“#modulelist”下的ul class=“下拉菜单”。我仍然希望能够搜索不在ul class=“下拉菜单”下的li元素。下面是我的PHP和jquery代码片段 <ul class="to_do" id = "modulelist"> <?php foreach($course_titles_not_
<ul class="to_do" id = "modulelist">
<?php
foreach($course_titles_not_completed as $course_title){
echo '<li class="dropdown">';
echo '<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false"><i class="fa fa-chevron-down"></i></a>';
echo '<ul class="dropdown-menu" role="menu">';
if(!empty($prereq_course_titles)){
foreach($prereq_course_titles as $prereq_course_title){
echo '<li><a href="#">';
echo $prereq_course_title;
echo '</a></li>';
}
}
else{
echo '<li><a href="#">';
echo 'No prerequisites';
echo '</a></li>';
}
echo '</ul>';
echo '<input type="checkbox" class="flat">';
echo $course_title;
echo '</li>';
}
?>
</ul>
<script>
$(document).ready(function(){
$('.search').on('keyup',function(){
var searchTerm = $(this).val().toLowerCase();
$("#modulelist li").each(function(){
var lineStr = $(this).text().toLowerCase();
if(lineStr.indexOf(searchTerm) === -1){
$(this).hide();
}else{
$(this).show();
}
});
});
});
</script>
$(文档).ready(函数(){
$('.search')。在('keyup',function()上{
var searchTerm=$(this.val().toLowerCase();
$(“#modulelist li”)。每个(函数(){
var lineStr=$(this.text().toLowerCase();
if(lineStr.indexOf(searchTerm)=-1){
$(this.hide();
}否则{
$(this.show();
}
});
});
});
我似乎不能不在搜索中包含ul class=“下拉菜单”及其子元素。我不想删除ul和li元素作为解决方案,因为如果搜索栏中没有输入任何内容,我仍然需要它们出现
请一定要帮助我,提前谢谢你 您可以使用
选择器选择#modulelist
$(“#modulelist>li”)。每个((i,e)=>{
console.log(e.tagName,e.className);
});代码>
-
- 1.1
-
- 2.1