jQuery,data()不更新数据属性

lla*_*ato 5 html javascript ajax jquery

我有下面的HTML和相关的jQuery.该html功能工作正常,但该data功能根本不影响HTML,我不能为我的生活搞清楚,在浏览器中根本没有错误.

HTML

<span id="usernameStatus" data-valid="0">x</span>
Run Code Online (Sandbox Code Playgroud)

jQuery的

data由AJAX调用返回,它只会是truefalse.

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

Him*_*mel 5

根据 jQuery API 文档

.data() 方法允许我们以一种安全的方式将任何类型的数据附加到 DOM 元素,从而避免循环引用和内存泄漏。

.data()方法不会修改现有的 DOM 节点,而只能通过调用$selector.data(). 您的 DOM 元素不会改变,只是附加到它们的数据。