javascript - 我如何以编程方式更改选择,以便它触发其 onchange 行为?

标签 javascript select onchange

这似乎不起作用:

<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/

相关文章:

javascript - 子组件如何在不监听生命周期方法的情况下从父组件接收 props?

MySQL - 在 varchar 列上选择 0(零)作为条件返回所有行?

mysql - 获取时间戳与前一行明显不同的记录 ID

reactjs - React Hook Form onChange 选择 Materialui

javascript - 保存 JSON 对象

javascript - javascript文件中的 "style xyz.css"是什么意思

php - 根据之前的选择选择字段

JQuery ASP.NET .change 事件未触发

python - javascript 中的 OnChange 或 OnBlur 事件在 Django 中运行 python 函数并返回结果?

php - 如何让 Javascript 在 Prototype AJAX 请求中工作