jQuery, data () não atualizando atributo de dados [duplicado]

Esta pergunta já tem uma resposta aqui:

jQuery .data () não funciona, mas .attr () faz 7 respostas

Eu tenho a parte abaixo de HTML e o jQuery associado. ohtmlfunção está funcionando corretamente, mas odata função não está afetando o HTML, eu não consigo descobrir isso, sem erros no navegador.

HTML

<span id="usernameStatus" data-valid="0">x</span>

jQuery

data for retornado por uma chamada AJAX, somente serátrue oufalse.

function validUsername(data)
{        
    if (data === 'true') {
        $("#usernameStatus").html("y").data("valid", 1);
    } else {
        $("#usernameStatus").html("x").data("valid", 0);
    }
}

questionAnswers(3)

yourAnswerToTheQuestion