0

我正在使用https://github.com/chromawoods/instaFilta过滤表格

该表使用 ajax 进行动态行插入,并且每个行单元格都可以使用 edit in place 进行更新:

https://github.com/itinken/jinplace

现在,当我添加一个新行然后将例如“标题”编辑为“Linux”然后尝试过滤时,它将显示具有“Linux”的行,如果我再次将“Linux”更改为“Unix”并再次尝试过滤而不从服务器重新加载页面 - 单词“Unix”将更改为旧数据 - 在这里,“Linux”和过滤器将不起作用,当我重新加载页面时,标题正确显示为“Unix”。

所以当我尝试过滤时,dom会从陈旧的数据中更新。

代码:

//就地编辑

$(document).on('click', 'span.editable', function(event) {
    $('.editable').jinplace({
        url: '/onit/web/data-updater.php',
        textOnly: false,
        placeholder: '',
        okButton: '',
        cancelButton: ''
    })
    .on('jinplace:done', function(event, data) {
       console.log('Successful! New value is', data);
    });
});

这是代码

// 筛选

$(document).on('click', '#filter-me', function(event) {
    //event.preventDefault();
    $('#filter-me').instaFilta({
        //scope: '.content-wrapper',
        //targets: '.instafilta-target',
        caseSensitive: false,
        markMatches: true,
        beginsWith: false,
        matchCssClass: 'instafilta-match',
        itemsHideEffect: 'slideUp',
        itemsHideDuration:300
    });
});

当使用就地编辑更新行时,我如何进行过滤器更新,或者我如何告诉 instaFilta 获取最新的 dom?

4

1 回答 1

0

你可以试试这个

$(document).ajaxComplete(function() {
    $("#filter-me").instaFilta({
        scope: "#ex1" 
    });
});

在ajax结束后初始化过滤

于 2015-10-29T13:38:13.017 回答