这似乎不起作用:
<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>
(我正在使用道场,但这并不重要.)
解决方法
“onchange”名称有点误导,除非您了解更改事件和更改的值不同.当用户更改浏览器中的值时,会发生更改事件.我相信你可以通过在以编程方式更改值之后调用dojo.byId(‘mySel’).onchange()来手动触发事件. (你可能需要实际定义一个调用alert的函数.我自己没有这样做.)