Using querySelectorAll
, querySelector
and getElementById
should get you started.
// get "data-qa" value by "id"
var data = document.getElementById('id-test2').getAttribute('data-qa');
console.log(data);
// get "id" value by "data-qa"
var data = document.querySelector('[data-qa="data-qa-test2"]').id;
console.log(data);
// get all elements with attribute "data-qa"
var elems = document.querySelectorAll('[data-qa]');
// get all "ids"
var data = [];
elems.forEach(function(elem){
data.push(elem.id);
});
console.log(data);
// get all "data-qa"
var data = [];
elems.forEach(function(elem){
data.push(elem.getAttribute('data-qa'));
});
console.log(data);
// get all "ids" and "data-qa"
var data = [];
elems.forEach(function(elem){
data.push({
"id": elem.id,
"qa": elem.getAttribute('data-qa')
});
});
console.log(data);
// get all "ids" and "data-qa" with "id" as key
var data = {};
elems.forEach(function(elem){
data[elem.id] = {
"id": elem.id,
"qa": elem.getAttribute('data-qa')
};
});
console.log(data);
<div id="id-test" data-qa="data-qa-test"></div>
<div id="id-test1" data-qa="data-qa-test1"></div>
<div id="id-test2" data-qa="data-qa-test2"></div>
<div id="id-test3" data-qa="data-qa-test3"></div>