Onchange在加载时触发,而不是在选择值更改时触发

时间:2014-04-09 14:00:11

标签: javascript select onchange

我提取了我的代码,以帮助解释这一点:http://jsfiddle.net/DF2Uw/1/

我基本上想看看用户何时更改slottime的值。我使用一个简单的onchange处理程序:slottime.setAttribute(onchange, alert("oh no"));

然而,只要在页面上生成选择而不是在更改值时,这似乎就会触发。我不明白为什么,这对我没用。

任何人都可以向我解释这个逻辑并提出修正建议吗?

1 个答案:

答案 0 :(得分:1)

  1. 使用.addEventListener代替设置属性。
  2. 您实际上并未设置属性值。你正在调用一个 函数alert()。将其更改为:setAttribute('onchange', 'alert("oh no")')
  3. 摆弄.addEventListenerhttp://jsfiddle.net/DF2Uw/2/