Обратиться к элементу jQuery на странице по ID в котором есть часть текста
Суть вопроса такова, есть элемент на с id="v-cancel-1041", как я могу через jQuery обратиться к этому элементу? Но проблема в том, что я знаю только то, что id="v-cancel- а остальные цифры генерируются кодом. То есть я не знаю точный id, только часть
Есть ли возможность через фильтр как то найти этот элемент? Можно и на чистом JS если на jquery нету вариантов
Ответы (2 шт):
Автор решения: Alex Krass
→ Ссылка
Да, CSS селекторы по атрибутам вполне работают.
$("div[id^='v-cancel']").text("работает!")
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="v-cancel-1041"></div>
Автор решения: OPTIMUS PRIME
→ Ссылка
В jQuery, $ - это просто функция, которая помимо прочего, в качестве аргумента принимает и обычную строку, которую обработает как CSS-селектор. А конкатенацию строк еще не отменяли)
let code = 1041; // откуда-то прилетело число...
$("#v-cancel-" + code)
Соответственно, на JS это выглядит так:
document.getElementById("v-cancel-" + code);
document.querySelector("#v-cancel-" + code);