Setar SELECT de estado e cidade dependentes

Bom dia galera, estou tendo um problema com meu código, eu trago os dados do banco mas tenho 2 SELECT dependentes, um com estado e a cidade, segue o código :

        $.when(
            $('#estado').val(data.estado), //o valor da option no select estado ( já está preenchido com os values desde o carregamento da página ) é setado.
            $('#estado').change())         //o método change() é chamado para que o carregamento das cidades no select 2 ( cidades ) é feito.
        .then(function() {
            $('#cidade').val(data.cidade); //deveria setar a cidade vinda do banco como a option no select.
        });   

funcional apenas até a parte do $(’#estado’).change(), a cidade ( vinda do banco ) é até setada por um breve momento, questão de 0,25 segundos, depois o valor que aparece na cidade é alterado e setado como a primeira option dentre todas opções do select. Alguém já passou por tal problema ? estou a um tempo atrás de solução e não consigo obter nenhuma resposa, porém sei que é possível fazer como isso é apenas um formulário de cadastro para edição, muitos outros sistemas e sites usam este recurso. Desde já, obrigado a todos !

provavelmente tem algum outro evento que está modificando esses componentes.