Обновление переменной jQuery на ajax завершено

im все еще новичок с JS.

Я использую ajax для фильтрации контента в wordpress. Поэтому мне нужно отправить 2 переменные на PHP. Но проблема в том, что как только я перейду дальше, одна из переменных должна измениться. В html данные изменяются, но jQuery, который работает (документ).ready использует начальную переменную. Как я могу сделать обновление переменной на ajax полным?

вот мой код

jQuery(document).ready(function($) {
$('.tax-filter').click( function(event) {

    if (event.preventDefault) {
        event.preventDefault();
    } else {
        event.returnValue = false;
    }

    var selecetd_taxonomy = $(this).attr('id');
    var personData = $('#content').data('id');


    data = {
        action: 'filter_posts',
        afp_nonce: afp_vars.afp_nonce,
        taxonomy: selecetd_taxonomy,
        person: personData,
    };


    $.ajax({
        type: 'post',
        dataType: 'json',
        url: afp_vars.afp_ajax_url,
        data: data,
        success: function( data, textStatus, XMLHttpRequest ) {
            $('.showContent').html( data.response );
        },

        error: function( MLHttpRequest, textStatus, errorThrown ) {
            $('.projects').html( 'Error 404' );
        }
    })
});
});

из другой функции .data ('id') в html получает новый значение, но мне нужен jQuery, чтобы получить новое значение aswell

изменить:

мне нужно обновить personData в моей функции щелчка. Значение идентификатора данных #content обновляется на ajaxComplete. Это делается другой функцией щелчка, которая получает значение из PHP.

1 ответов


обновить data-id с помощью $('#content').data('id', 'newValueHere') вместо $('#content').attr('data-id', 'newValue')

посмотреть скрипка и обратите внимание, что изменение атрибута .attr () не работает, но .данных() делает.