
当 select 下拉框仅含一个选项(且默认已选中)时,用户无法触发 change 事件——因为 dom 认为“值未发生改变”。必须确保至少有两个可选选项,并显式设置默认未选状态(如添加空值占位符),才能可靠捕获用户选择行为。
在 jQuery 中,change 事件仅在表单元素的值实际发生变化时触发。对于
✅ 正确示例(可触发 change):
⚠️ 注意事项:
- 不必使用 $(this).find(":selected").val() —— 对于 select 元素,$(this).val() 已直接返回当前选中 option 的 value 属性值,更高效且兼容性更好;
- 若需支持“首次加载即校验”,可在初始化后手动触发一次 .trigger('change'),但需确保 DOM 已就绪(建议包裹在 $(document).ready() 中);
- 避免将事件绑定代码写在










