#javascript #jquery #html
#javascript #jquery #HTML
Вопрос:
Я динамически создавал элементы без идентификатора, но с идентификатором атрибута данных, таким как: data-jobtypid="2"
.
Этот динамически созданный элемент имеет другие атрибуты данных, которые я хотел бы прочитать, и я знаю только data-jobtypid
идентификатор as и имя класса всех динамически созданных элементов.
Итак, я попробовал что-то вроде этого:
var cache_color = $('.addjob_choose_paymentbtn')
.filter('[data-jobtypid="2"]')
.getAttribute("data-jobtypcolorhover");
У кого-нибудь есть идея для меня, чтобы решить это?
С уважением
Комментарии:
1. Измените
getAttribute()
наattr()
, который является средством получения атрибута jQuery
Ответ №1:
Просто используйте селектор атрибутов в сочетании с $.data()
:
var cache_color = $('.addjob_choose_paymentbtn[data-jobtypid="2"]')
.data('jobtypcolorhover');
console.log(cache_color);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="addjob_choose_paymentbtn" data-jobtypid="2" data-jobtypcolorhover="red">div</div>
Вы можете альтернативно использовать .attr('data-jobtypcolorhover')
, что является правильным способом доступа к атрибуту в jQuery, как упоминалось в комментариях выше. Однако, $.data()
это крошечный очиститель бит.
Комментарии:
1. Спасибо, это сделало работу 🙂
Ответ №2:
попробуйте
let c= document.querySelector('.addjob_choose_paymentbtn[data-jobtypid="2"]')
.dataset.jobtypcolorhover;
console.log(c);
<div class="addjob_choose_paymentbtn" data-jobtypid="2" data-jobtypcolorhover="blue">Hi</div>