Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/427.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
PHP/Javascript-即时搜索,但不同?_Php_Javascript_Instant_Google Instant - Fatal编程技术网

PHP/Javascript-即时搜索,但不同?

PHP/Javascript-即时搜索,但不同?,php,javascript,instant,google-instant,Php,Javascript,Instant,Google Instant,我有一个带有空白搜索栏的页面,然后在它下面的表格中有一堆联系人。每个联系人是一个div 我希望能够在搜索栏中输入文本时过滤联系人表。(例如,如果在搜索栏中键入“Fran”,则您只能看到姓名中带有“Fran”的联系人。如果删除了“Fran”,则所有联系人都将返回默认状态。) 这可能吗?如何操作?(我找到了一个即时搜索diy指南,但它的工作方式与谷歌相同,在搜索栏下方有一个下拉菜单。)我建议使用,它不需要ajax或服务器通信,只需在每次击键时根据输入框内容过滤呈现的表 确保将jquery库与此插件一

我有一个带有空白搜索栏的页面,然后在它下面的表格中有一堆联系人。每个联系人是一个div

我希望能够在搜索栏中输入文本时过滤联系人表。(例如,如果在搜索栏中键入“Fran”,则您只能看到姓名中带有“Fran”的联系人。如果删除了“Fran”,则所有联系人都将返回默认状态。)

这可能吗?如何操作?(我找到了一个即时搜索diy指南,但它的工作方式与谷歌相同,在搜索栏下方有一个下拉菜单。)

我建议使用,它不需要ajax或服务器通信,只需在每次击键时根据输入框内容过滤呈现的表


确保将jquery库与此插件一起包含在您的项目中,以使其正常工作。

您可以尝试使用jquery来实现相同的功能。

以下内容包含了您需要的基本逻辑,尽管它是相反的-它隐藏找到的内容,并且仅用于精确匹配。此外,它是一个on keypress事件,因此它仅在键入名称后点击空格后隐藏div,因此您也需要对其进行调整。 要在长文本字符串中查找匹配项,需要使用一些正则表达式来测试搜索字符串

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>Search</title>
    <script src="http://code.jquery.com/jquery-1.4.4.js"></script>
    <script>            
        $(document).ready(function(){
                $(".searchbox").keypress(function(){
                      $("div").each(function(){
                    if($(this).text() == $(".searchbox").val()){
                        $(this).hide("fast");
                    };
                      });
                });
            });
    </script>
    </head>
    <body>
    <form><input type="text" class="searchbox"></form>
        <div>Susan</div>
        <div>Fran</div>
        <div>Dave</div>
    </body>
    </head>
</html>

搜寻
$(文档).ready(函数(){
$(“.searchbox”).keypress(函数(){
$(“div”)。每个(函数(){
if($(this.text()==$(“.searchbox”).val()){
$(this.hide(“fast”);
};
});
});
});
苏珊
弗兰
戴夫

以下是一些Javascript示例:

<script type="text/javascript">
$(document).ready(function() {
    $("#search").keyup(function() {
        // Get the search value
        var searchValue = $(this).val();

        // If no value exists then show all divs
        if(searchValue === "") {
            $(".your_div").show();
            return;
        }

        // Initially hide all divs
        $(".your_div").hide();

        // Now show any that contain the search value
        $(".your_div:contains('" + searchValue + "').show();
    }); 
}); 
</script>

$(文档).ready(函数(){
$(“#搜索”).keyup(函数(){
//获取搜索值
var searchValue=$(this.val();
//如果不存在值,则显示所有div
如果(searchValue==“”){
$(“.your_div”).show();
返回;
}
//最初隐藏所有div
$(“.your_div”).hide();
//现在显示任何包含搜索值的
$(“.your_div:contains(“+searchValue+”).show();
}); 
}); 

我认为这不适用,正如博文作者所写:“我找到了一个即时搜索diy指南,但它只是像谷歌那样工作,在搜索栏下面有一个下拉菜单。”