jQuery как проверить нет ли в массиве элемента с определенным значением val()

Есть несколько чекбоксов:

 <div id="checkboxes-1">
     <label><input type="checkbox" value='32'/>Первый</label>
     <label><input type="checkbox" value='33'/>Второй</label>
     <label><input type="checkbox" value='34'/>Третий</label>
 </div>

Как можно задать условие, ЕСЛИ в массиве среди отмеченных чебкосов $('#checkboxes-1').find('input:checked') нет input с val() === '32', ТО...


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

Автор решения: Алексей Шиманский

let values = Array.from(document.querySelectorAll("input.checkbox:checked")).map(e => +e.value);
let arrayHasValue = (arr, search) => arr.includes(search);
let search = 32;

if (arrayHasValue(values, search))
    console.log('есть');
else
    console.log('нет');
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0/jquery.min.js"></script>
<div id="checkboxes-1">
     <label><input type="checkbox" value='32' class="checkbox" checked/>Первый</label>
     <label><input type="checkbox" value='33' class="checkbox" checked/>Второй</label>
     <label><input type="checkbox" value='34' class="checkbox"/>Третий</label>
 </div>


Более краткий вариант:

let has =  document.querySelector('input.checkbox[value="32"]:checked');

if (has)
    console.log('есть');
else
    console.log('нет');
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0/jquery.min.js"></script>
<div id="checkboxes-1">
     <label><input type="checkbox" value='32' class="checkbox" checked/>Первый</label>
     <label><input type="checkbox" value='33' class="checkbox" checked/>Второй</label>
     <label><input type="checkbox" value='34' class="checkbox"/>Третий</label>
 </div>


C Jquery

let has = $('input.checkbox[value=32]:checked').length > 0


if (has)
    console.log('есть');
else
    console.log('нет');
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0/jquery.min.js"></script>
<div id="checkboxes-1">
     <label><input type="checkbox" value='32' class="checkbox" checked/>Первый</label>
     <label><input type="checkbox" value='33' class="checkbox" checked/>Второй</label>
     <label><input type="checkbox" value='34' class="checkbox"/>Третий</label>
 </div>

→ Ссылка