你能看到我在这里做什么吗?我想将一些对象推送到一个变量中,但要保持所有内容整洁并包含在内。
var toggles = document.querySelectorAll('[data-search-toggle]').forEach(function(el) {
this.push({ 'element': el, 'select': el.dataset });
});
显然上面的代码不起作用,这只是我想要的概念,所以如果我要toggles
在下面的console.log中,我会得到以下几行:
[
{
'element': [Object],
'select': 'dropdown-search__select--make'
},
{
'element': [Object],
'select': 'dropdown-search__select--make'
},
{
'element': [Object],
'select': 'dropdown-search__select--make'
},
]
编辑:或者我需要做这样的事情:
var tmp;
var toggles = document.querySelectorAll('[data-search-toggle]').forEach(
tmp.push(function(el) {
return { 'element': el, 'select': el.dataset };
})
);
HTML:
<input type="radio" class="dropdown-search__radio" name="vehtype" id="dropdown-search__vehtype--cars" value="cars" checked required data-search-toggle="dropdown-search__select--make">
<label class="dropdown-search__label--radio" for="dropdown-search__vehtype--cars">Cars</label>
<input type="radio" class="dropdown-search__radio dropdown-search__radio" name="vehtype" id="dropdown-search__vehtype--vans" value="vans" data-search-toggle="dropdown-search__select--make">
<label class="dropdown-search__label--radio" for="dropdown-search__vehtype--vans">Vans</label>
<input type="radio" class="dropdown-search__radio dropdown-search__radio" name="vehtype" id="dropdown-search__vehtype--bikes" value="bikes" data-search-toggle="dropdown-search__select--make">
<label class="dropdown-search__label--radio" for="dropdown-search__vehtype--bikes">Bikes</label>
您可以querySelectorAll
使用该Array.from
函数将 的结果转换为数组,并将map 函数作为第二个参数传递以将每个元素包装在一个对象中。
const toggles = Array.from(document.querySelectorAll('[data-search-toggle]'), (el) => {
return {
element: el,
select: el.dataset
};
});
console.log(toggles);
<input type="radio" class="dropdown-search__radio" name="vehtype" id="dropdown-search__vehtype--cars" value="cars" checked required data-search-toggle="dropdown-search__select--make">
<label class="dropdown-search__label--radio" for="dropdown-search__vehtype--cars">Cars</label>
<input type="radio" class="dropdown-search__radio dropdown-search__radio" name="vehtype" id="dropdown-search__vehtype--vans" value="vans" data-search-toggle="dropdown-search__select--make">
<label class="dropdown-search__label--radio" for="dropdown-search__vehtype--vans">Vans</label>
<input type="radio" class="dropdown-search__radio dropdown-search__radio" name="vehtype" id="dropdown-search__vehtype--bikes" value="bikes" data-search-toggle="dropdown-search__select--make">
<label class="dropdown-search__label--radio" for="dropdown-search__vehtype--bikes">Bikes</label>
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句