如何在 JavaScript 中按类获取元素并将 aria-checked="false" 更改为 "true"?

Mik*_*ler 3 javascript getelementbyid getattribute

我想在页面上选择多个类,并更改aria-checked="false"aria-checked="true"。这是我现在使用的脚本:

elms=document.getElementsByClassName("d-va-p a-f-e");
for (i=0;i<elms.length;i++){
    if(elms[i].getAttribute("aria-checked")="false")
        elms[i].getAttribute("aria-checked")="true"
};
Run Code Online (Sandbox Code Playgroud)

源代码如下。该课程是“d-va-p afe”。

<div class="d-va-p a-f-e" style="-webkit-user-select: none;" role="option" tabindex="-1" aria-checked="false" id=":89">
    <div class="a-f-e" style="-webkit-user-select: none;">
        <div class="d-va-p-Fe a-f-e" style="-webkit-user-select: none;">
            <img src="https://lh4.googleusercontent.com/-FxDBvNDkbj4/AAAAAAAAAAI/AAAAAAAAAAA/q4f7Fc7OF6A/s48-c/photo.jpg" class="d-va-p-Z a-f-e">
        </div>
        <div class="a-f-e d-va-p-yda" style="-webkit-user-select: none;">
            <div class="d-va-p-Ec a-f-e" style="-webkit-user-select: none;">Herb Smith</div>
        </div>
    </div>
    <div class="d-va-p-iI-oc" style="-webkit-user-select: none;">
        <span class="a-f-e d-J-Eb-v-YA-Me" style="-webkit-user-select: none;"></span>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

bfa*_*tto 6

我看到两个问题。首先,您使用的是赋值而不是比较。所以

if(elms[i].getAttribute("aria-checked")="false")
Run Code Online (Sandbox Code Playgroud)

应该:

if(elms[i].getAttribute("aria-checked")=="false")
Run Code Online (Sandbox Code Playgroud)

其次,您尝试设置属性的值是行不通的。尝试这个:

elms[i].setAttribute("aria-checked", true);
Run Code Online (Sandbox Code Playgroud)