Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/478.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 如何反转<;李>;使用:not()和:contains()进行选择?_Javascript_Jquery_Css - Fatal编程技术网

Javascript 如何反转<;李>;使用:not()和:contains()进行选择?

Javascript 如何反转<;李>;使用:not()和:contains()进行选择?,javascript,jquery,css,Javascript,Jquery,Css,我想用jQuery进行实时搜索。这是我的密码: $("#searchInput").on("keyup", function () { var searchTerm = $("#searchInput").val(); $('li:contains("' + searchTerm + '")').show().siblings(':not(li:contains("' + searchTerm + '"))').hide(); }); 显示包含“搜索文本”的可以

我想用jQuery进行实时搜索。这是我的密码:

$("#searchInput").on("keyup", function () {
        var searchTerm = $("#searchInput").val();
        $('li:contains("' + searchTerm + '")').show().siblings(':not(li:contains("' + searchTerm + '"))').hide();
});
显示包含“搜索文本”的
  • 可以正常工作,但第二部分(隐藏其余项目)不能完全工作

    当我搜索不相关的单词时,如何隐藏
  • s?

    您可以使用

    解决方案1

    $(“#搜索输入”)。在(“键控”,函数()上{
    var searchTerm=$(“#searchInput”).val();
    $(“ul li”).show().not($(“li:contains(“+searchTerm+”)).hide();
    });
    
    
    
    • 你好
    • 世界
    • 清单1
    • 单词
    • 另一里

    为什么不先隐藏所有li,然后显示包含搜索词的li?这样效率会高得多-
    $('li').hide().filter(':contains('+searchTerm+'))。show()
    您是否尝试过使用.sibles()简化它。hide()@ConfusedShark作为内部jQuery迭代集合中的所有元素,这将隐藏所有其他同级元素,即使它们实际上包含搜索词。谢谢大家!你太棒了@彼得非常感谢你,伙计。它工作得很好。如果我有你的大脑…很好的回答!有启发性的解决方案,嘿,伙计,你太棒了!抱歉,我还不能投票给你。