繁体   English   中英

如何使 addEventListener 工作/Javascript

[英]How to make addEventListener work/Javascript

我是 js 新手,不明白我在哪里犯了错误。 我尝试使 select 选项切换。 这是一个 HTML 代码

   <select id="sort">
        <option value="name">name</option>
        <option value="price">price</option>
      </select>

我尝试使用 AddEventListener('change')。 但它只能手动切换。 当我在 select 中选择价格或名称时,如何使其自动工作?

let c = document.getElementById('sort');
   c.addEventListener('change', byField);
function byField(value) {
  return (a, b) => a[value] > b[value] ? 1 : -1; 
};
  data.sort(byField('price'));

我将不胜感激任何帮助!

您正在手动执行data.sort(byField('price')); ,通过从事件 object 获取value使其动态化。

e.target.value将为您提供select HTML 元素的更改value

let c = document.getElementById("sort");

function byField(value) {
    return (a, b) => (a[value] > b[value] ? 1 : -1);
}
c.addEventListener("change", (e) => {
    data.sort(byField(e.target.value));
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM