使 jQuery FIlter 在 Ajax 刷新后保持不变

问题描述 投票:0回答:1

我正在文档上使用 jQuery 选择器,准备隐藏基于后代元素的 html 文本的元素 - 它可以工作,但是当有 Ajax 刷新时,元素会再次显示,我怎样才能使其在刷新后保持不变,我的代码是:

 $(".fl-theme-builder-archive-events-tutoring .tribe-filter-bar-c-filter__toggle-label").filter(function () {
            return $(this).text() === "Age Range";
}).closest('.tribe-filter-bar-c-filter').hide();

我已将

tribeAjaxSuccess
确定为刷新后可能的 Ajax 回调,并尝试了以下代码:

   $(document).on('tribeAjaxSuccess', function () {
        // Your code to persist after the Ajax refresh here
        $(".fl-theme-builder-archive-events-tutoring .tribe-filter-bar-c-filter__toggle-label").filter(function () {
            return $(this).text() === "Age Range";
        }).closest('.tribe-filter-bar-c-filter').hide();
    });

但刷新时仍然显示隐藏元素

jquery ajax
1个回答
0
投票

找到正确的回调

afterSetup.tribeEvents
并使用
.on()
方法持久隐藏元素

$(document).on('afterSetup.tribeEvents', function () {
    // Your code to persist after the Ajax refresh here
    $(".fl-theme-builder-archive-events-tutoring .tribe-filter-bar-c-filter__toggle-label").filter(function () {
        return $(this).text() === "Age Range";
    }).closest('.tribe-filter-bar-c-filter').hide();

});
© www.soinside.com 2019 - 2024. All rights reserved.