在ajax完成时更新jQuery变量

a_k*_*k_u 6 javascript php ajax jquery

我仍然是JS的初学者.

我使用ajax过滤wordpress中的内容.所以我需要向PHP发送2个变量.但问题是,一旦我进一步导航,其中一个变量需要改变.在html中,数据被更改,但运行在(document).ready上的jquery使用初始变量.如何在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' );
        }
    })
});
});
Run Code Online (Sandbox Code Playgroud)

从另一个函数中,html中的.data('id')获取一个新值,但我需要jQuery来获取新值

编辑:

我需要在我的点击功能中更新personData.#content的data-id值在ajaxComplete上更新.它是由另一个从PHP获取值的click函数完成的.

Ric*_*kwa 2

$('#content').data('id', 'newValueHere')使用而不是更新数据ID$('#content').attr('data-id', 'newValue')

请参阅fiddle并注意,使用 .attr() 更改属性不起作用,但 .data() 可以。