Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 搜索过滤器列表,不考虑字序问题,搜索严格_Javascript_Jquery_Html_Css_Frontend - Fatal编程技术网

Javascript 搜索过滤器列表,不考虑字序问题,搜索严格

Javascript 搜索过滤器列表,不考虑字序问题,搜索严格,javascript,jquery,html,css,frontend,Javascript,Jquery,Html,Css,Frontend,我设法解决了这个问题。我现在可以不考虑词序进行搜索,但搜索过滤器会显示大量结果,它并不像我希望的那样严格。为了更好地说明我的问题,我在下面发布了一段可运行的代码片段。如果您在搜索栏中键入“Correy”,它将正确显示包含“Correy”一词的所有结果。但是,如果我想搜索一个特定的Correy,我将无法。 例如,在搜索栏中键入“Correy Adele”它仍将像以前一样显示所有Corey结果。我不希望发生这种情况。有什么建议吗 函数myFunction(){ var filter=$('inpu

我设法解决了这个问题。我现在可以不考虑词序进行搜索,但搜索过滤器会显示大量结果,它并不像我希望的那样严格。为了更好地说明我的问题,我在下面发布了一段可运行的代码片段。如果您在搜索栏中键入“Correy”,它将正确显示包含“Correy”一词的所有结果。但是,如果我想搜索一个特定的Correy,我将无法。 例如,在搜索栏中键入“Correy Adele”它仍将像以前一样显示所有Corey结果。我不希望发生这种情况。有什么建议吗

函数myFunction(){
var filter=$('input').val().toUpperCase().split(“”);
var li=$('li');
变量a=$('a');
var-ul;
var TXT值;
ul=document.getElementById(“myUL”);
对于(变量i=0;i-1){
li[i].style.display='';
//不需要进一步匹配
}否则{
li[i].style.display='none';
}
打破
}
}
}

* {
框大小:边框框;
}
#我的输入{
背景图片:url('/css/searchicon.png');
背景位置:10px 12px;
背景重复:无重复;
宽度:100%;
字体大小:16px;
填充:12px 20px 12px 40px;
边框:1px实心#ddd;
边缘底部:12px;
}
#密尔{
列表样式类型:无;
填充:0;
保证金:0;
}
#李美儿{
边框:1px实心#ddd;
页边距顶部:-1px;/*防止双边框*/
背景色:#f6f6f6;
填充:12px;
文字装饰:无;
字号:18px;
颜色:黑色;
显示:块
}
#myUL li a:悬停:非(.header){
背景色:#eee;
}


您可以选择另一个vaiable并将其设置为
true
,然后迭代过滤词,并在最后关闭不需要的项目

match = true;

for (var f = 0; f < filter.length && match; f++) { // exit loop if not match
    match = txtValue.includes(filter[f]);
}

li[i].style.display = match ? '' : 'none';
match=true;
对于(var f=0;f
函数myFunction(){
var filter=$('input').val().toUpperCase().split(/\s+/);
var li=$('li');
变量a=$('a');
var-ul;
var TXT值;
ul=document.getElementById(“myUL”);
变量匹配
对于(变量i=0;i
*{
框大小:边框框;
}
#我的输入{
背景图片:url('/css/searchicon.png');
背景位置:10px 12px;
背景重复:无重复;
宽度:100%;
字体大小:16px;
填充:12px 20px 12px 40px;
边框:1px实心#ddd;
边缘底部:12px;
}
#密尔{
列表样式类型:无;
填充:0;
保证金:0;
}
#李美儿{
边框:1px实心#ddd;
页边顶部:-1px;
/*防止双重边界*/
背景色:#f6f6f6;
填充:12px;
文字装饰:无;
字号:18px;
颜色:黑色;
显示:块
}
#myUL li a:悬停:非(.header){
背景色:#eee;
}


您可以选择另一个vaiable并将其设置为
true
,然后迭代过滤词,并在最后关闭不需要的项目

match = true;

for (var f = 0; f < filter.length && match; f++) { // exit loop if not match
    match = txtValue.includes(filter[f]);
}

li[i].style.display = match ? '' : 'none';
match=true;
对于(var f=0;f
函数myFunction(){
var filter=$('input').val().toUpperCase().split(/\s+/);
var li=$('li');
变量a=$('a');
var-ul;
var TXT值;
ul=document.getElementById(“myUL”);
变量匹配
对于(变量i=0;i
*{
框大小:边框框;
}
#我的输入{
背景图片:url('/css/searchicon.png');
背景位置:10px 12px;
背景重复:无重复;
宽度:100%;
字体大小:16px;
填充:12px 20px 12px 40px;
边框:1px实心#ddd;
边缘底部:12px;
}
#密尔{
列表样式类型:无;
填充:0;
保证金:0;
}
#李美儿{
边框:1px实心#ddd;
页边顶部:-1px;
/*防止双重边界*/
背景色:#f6f6f6;
填充:12px;
文字装饰:无;
字号:18px;
颜色:黑色;
显示:块
}
#myUL li a:悬停:非(.header){
背景色:#eee;
}


哇,非常感谢!!这个问题困扰了我很多年。再次感谢您!哇,太谢谢你了!!这个问题困扰了我很多年。再次感谢您!