我想创建一个按钮来重置页面上的所有过滤器。 Ale EventListery。
我有几个单选按钮。我有一个可以按价格,尺寸和颜色分类的项目列表(单击单选按钮)。
当我单击按钮(重置按钮)时,我希望移除过滤器,并且项目在过滤之前返回其位置。
这是我的代码
function stop() {
Array.from(document.querySelectorAll('.choice--radio')).map(x => x.removeEventListener("click", sortNumber));
Array.from(document.querySelectorAll('.choice--radio')).map(x => x.checked = false);
}
clear.addEventListener('click', stop);
HTML代码
<ul class="sort__options">
<li>
<input class="choice choice--radio" name="sort" type="radio" id="sort-title">
<label class="choice__label" for="sort-title">title</label>
</li>
<li>
<input class="choice choice--radio" name="sort" type="radio" id="sort-subscribers">
<label class="choice__label" for="sort-subscribers">subscribers</label>
</li>
<li>
<input class="choice choice--radio" name="sort" type="radio" id="sort-videos">
<label class="choice__label" for="sort-videos">videos</label>
</li>
<li>
<input class="choice choice--radio" name="sort" type="radio" id="sort-views">
<label class="choice__label" for="sort-views">views</label>
</li>
</ul>
我正在删除选中的属性。但是这些元素不会恢复到原始位置,而是按照对事件进行排序的顺序。
如何解决这个问题?