本文教你使用 html `data-*` 属性和 javascript `change` 事件,实现在任意一个下拉框(“)被选中时,自动提取两个自定义参数并重定向到带查询参数的新页面,无需提交按钮。
在 Web 开发中,常需根据用户对下拉菜单的选择动态跳转并携带参数。与按钮点击不同, 元素的交互核心事件是 change(而非 click 或 onclick),它在用户完成选择且焦点离开或选项真正改变后触发——这更符合语义,也避免误触发。
✅ 正确做法:用 data-* 存储参数 + change 事件委托
HTML 中不应使用非法属性(如 val1、val2),而应采用标准的自定义数据属性 data-val1 和 data-val2。同时,为提升性能与可维护性,推荐使用事件委托:将 change 监听器绑定到共同父容器,再通过 event.target 精准获取当前触发的 及其选中项。