как кликнуть на все элементы через js

Добрый день допустим у меня вот такой код есть

$(".Checkbox").click();
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div class="ListItem-button" role="button" tabindex="0">
   <label class="Checkbox">
    <input type="checkbox">
</div>
<div class="ListItem-button" role="button" tabindex="0">
   <label class="Checkbox">
    <input type="checkbox">
</div>
<div class="ListItem-button" role="button" tabindex="0">
   <label class="Checkbox">
    <input type="checkbox">
</div>

Мне нужно оттуда через js взять label и кликнуть по нему чтоб была галочка

Он кликает, но не на все label

Как сделать чтоб он в каждом label у которого класс .Checkbox галочку поставил?


Ответы (1 шт):

Автор решения: EzioMercer

Я лишь добавил названия к label, но это ни на что не влияет, основное - это правильный селектор. Я просто выбрал все элементы, у которых type равно checkbox и вызвал событие click на всех них:

$("[type=checkbox]").click();
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div class="ListItem-button" role="button" tabindex="0">
  <label class="Checkbox">Label 1</label>
  <input type="checkbox">
</div>
<div class="ListItem-button" role="button" tabindex="0">
  <label class="Checkbox">Label 2</label>
  <input type="checkbox">
</div>
<div class="ListItem-button" role="button" tabindex="0">
  <label class="Checkbox">Label 3</label>
  <input type="checkbox">
</div>

Если принципиально именно к классу label привязываться, то можете использовать

$(".Checkbox + input").click();

вместо того что в примере. Такой селектор просто берёт последующий соседний элемент input от элемента с классом Checkbox.

Если на странице несколько элементов с классом Checkbox, не являющихся label, то можете конкретизировать таким образом:

$("label.Checkbox + input").click();

Но если и input-ов может быть несколько типов после label-а с классом Checkbox, то вот последний вариант, который я могу предложить:

$("label.Checkbox + input[type=checkbox]").click();
→ Ссылка