带有实时刷新页面的jQuery过滤器

时间:2018-09-21 07:01:42

标签: jquery

我正在尝试创建一个过滤器来隐藏/显示div,但问题是该页面还实时刷新以获取数据,因此每当我搜索时,它都会隐藏应隐藏的项目,但由于页面刷新,该如何解决?我也将感谢代码示例,因为我对jQuery没有太多经验

$(document).ready(function () {
    $('#feed').load('load-feed.php', function () {

    });
    setInterval(function () {
        search = $('#search').val();
        $('#feed').load('load-feed.php', function () {

        });
    }, 1000);

    $("#search").on('input', function () {
        var matcher = new RegExp($(this).val(), 'gi');
        $('.feed-event').show().not(function () {
            return matcher.test($(this).find('.club-text').text())
        }).hide();
    });
});

1 个答案:

答案 0 :(得分:0)

似乎您正在使用php。你能做的是;

1)制作一个仅回显数据的单独文件;假设在 search_feed.php 中,您有一个SQL查询,然后将其转换为字符串,然后回显它。

2)利用 ajax 避免将文件不断加载到网页中。使用ajax,您可以请求数据并异步修改html元素。 https://www.w3schools.com/jquery/ajax_get.asp

$("#search").keyup(function(){
    var search = $(this).val();

    $.get("search_feed.php?filter="+search, function(data, status){

        // loop through result data
        $(data).each(function(i,v){
          // modify html table or other elements here
        });
    });
});