这似乎不起作用:
<select id="mySel" onchange="alert('foo')">
<option value="a">a</option>
<option value="b">b</option>
</select>
<script>
dojo.byId('mySel').value = 'b'; // select changes, but nothing is alerted
</script>
(我正在使用 dojo,但这并不重要。)
最佳答案
'onchange' 名称有点误导,除非您了解更改事件 和被更改的值不是一回事。当用户更改浏览器中的值时,会发生更改事件。不过,我相信您可以在以编程方式更改值后通过调用 dojo.byId('mySel').onchange()
手动触发事件。 (不过,您可能需要实际定义一个调用 alert
的函数。我自己还没有这样做。)
关于javascript - 我如何以编程方式更改选择,以便它触发其 onchange 行为?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1224728/