Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.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 过滤HTML表-Ajax_Javascript_Jquery_Ajax - Fatal编程技术网

Javascript 过滤HTML表-Ajax

Javascript 过滤HTML表-Ajax,javascript,jquery,ajax,Javascript,Jquery,Ajax,使用下面的脚本,当我开始在我的表中搜索Facebook时,它会将获取的Facebook附加到表中,现在表中有两个Facebook数据。当我清除搜索输入时,表必须移动到默认状态,即拥有所有项 为什么我的剧本没有这样做 PS:对不起,我的英语不好 <script> $(document).ready(function () { var typingTimer; var doneTypingInterval = 100;

使用下面的脚本,当我开始在我的表中搜索
Facebook
时,它会将获取的
Facebook
附加到表中,现在表中有两个
Facebook
数据。当我清除搜索输入时,表必须移动到默认状态,即拥有所有

为什么我的剧本没有这样做

PS:对不起,我的英语不好

<script>
$(document).ready(function () {
        var typingTimer;                
        var doneTypingInterval = 100; 

        $("#myInput").on('keyup', function () {
            clearTimeout(typingTimer);
            if ($('#myInput').val()) {
                typingTimer = setTimeout(doneTyping, doneTypingInterval);
            }
        });
    });

    //user is "finished typing," do something
    function doneTyping() {
        var key = $('#myInput').val();

        if (key.length >= 1) {
            $.ajax({
                url: '/customer/search/?myInput='+key,
                type: 'GET',
                beforeSend: function () {
                $("#table").slideUp('fast');

                },
                success: function (data) {
                    console.log(data);
                    $("#table").slideDown('fast');

                     var table = $("#table tbody");

                        $.each(data, function(idx, elem){
                            table.append(

                                "<tr><td></td> <td>"+elem.name+"</td><td>"+elem.phone+"</td><tr>"

                            );

                        });




                }            

            });

   }
}
</script>

$(文档).ready(函数(){
变量输入定时器;
var-doneTypingInterval=100;
$(“#myInput”)。在('keyup',函数(){
clearTimeout(键入计时器);
if($('#myInput').val()){
typingTimer=setTimeout(doneTyping,doneTypingInterval);
}
});
});
//用户正在“完成键入”,请执行某些操作
函数doneTyping(){
var key=$('#myInput').val();
如果(key.length>=1){
$.ajax({
url:“/customer/search/?myInput=”+键,
键入:“GET”,
beforeSend:函数(){
$(“#表”).slideUp('fast');
},
成功:功能(数据){
控制台日志(数据);
$(“#表”).slideDown('fast');
var表=$(“#表体”);
$.each(数据、函数(idx、元素){
表1.1追加(
“”+elem.name+“”+elem.phone+“”
);
});
}            
});
}
}

您添加了一个
if(key.length>=1)
条件,因此如果清除搜索输入,它将不会再次调用ajax函数。您应该删除此条件。

但当我清除时,它不会移动到默认状态?它仍然有重复的数据。事实上,您应该在“success”函数中添加一些内容来清除该表。与table.html(“”)类似,仅在$.each()之前。