Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Выделить несколько элементов с похожими id (https://javascript.ru/forum/jquery/84331-vydelit-neskolko-ehlementov-s-pokhozhimi-id.html)

vasoli 07.08.2022 21:20

Выделить несколько элементов с похожими id
 
Можно ли выделить несколько id у которых в название есть общее соотвествие значений, например в середине полного названия id? например:

id="aya"
id="byb"
id="cyc

Aetae 07.08.2022 21:26

Что значит выделить?
Если на css - можно через селектор [id*="y"] найти все id с y в любом месте.
Если на js - можно точнее, перебором:
const elements = Array.prototype.filter.call( 
  document.querySelectorAll('[id*="y"]'),
  el => /^.y.$/.test(el.id)
);

vasoli 07.08.2022 21:29

Спасибо. По моему и просто [id*="y"] работает.

vasoli 07.08.2022 22:50

а можно сделать исключение, например для <div id="12yo234">tet2</div>

Aetae 07.08.2022 23:12

[id*="y"]:not([id*="yo"])

vasoli 07.08.2022 23:16

Спасибо.

vasoli 08.08.2022 00:00

а можно то же самое но для такого кода?
$('#a input:checkbox').click(function () {
   if ($(this).is(':checked')) {
      $('#bab input:checkbox').not(this).prop('checked', false);
      $('#cac input:checkbox').not(this).prop('checked', false);
   }
});

Aetae 08.08.2022 12:43

Можно, подумой.

vasoli 08.08.2022 17:01

$('#saqar input:checkbox').click(function () {    if ($(this).is(':checked')) {       $('input[id*=saqar_]:checked').not(this).prop('checked', false);    } });


решил проблему добавив вышеуказанный кодо. это правильно и оптимально?

Aetae 08.08.2022 17:49

vasoli, сойдёт.)


Часовой пояс GMT +3, время: 08:50.