Вы можете использовать классы как способ поиска групп элементов, как предложил другой плакат. Мне лично не нравится это делать, потому что я считаю, что классы должны быть предназначены для CSS стилей, и использование их с намерением сделать их селекторами иногда может привести к непредвиденным последствиям, если вы решите поместить какой-то класс в другой элемент.
Вполне нормально добавить свои собственные свойства в тег HTML и использовать их. В отличие от id
, им не обязательно иметь уникальные значения. Я мог бы справиться с этим следующим образом:
<input type="checkbox" id="slider0" role="slider" checked>
<input type="checkbox" id="slider1" role="slider">
<input type="checkbox" id="slider2" role="slider" checked>
<input type="checkbox" id="slider3" role="slider" checked>
Здесь я добавил вымышленное свойство под названием role
. Если я хочу узнать, какие ползунки отмечены, я могу получить массив всех ползунков и l oop через них следующим образом:
let checkedSliders = [];
$('[role="slider"]').each((idx,element)=>{
if ($(element).prop('checked')) checkedSliders.push(element);
}
Вы можете использовать любое HTML свойство кроме id
для неуникальных значений. Смысл id
в том, что он предназначен для того, чтобы быть полностью уникальным на странице. Во многих новых браузерах отображается предупреждение консоли, если несколько тегов имеют одинаковые id
.