javascript - 如果新值与旧值相同,如何在 HTMLSelectElement 上触发更改事件?

标签 javascript dom-events html-select onchange

我有以下标记:

<select onchange="jsFunction()">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
</select>

当用户下拉组合框并选择与先前选择相同的选项(或根本不更改选择)时,JavaScript 不会将其视为 onchange 事件。因此,不会调用 jsFunction()。但即使在这种情况下,我也希望调用 jsFunction()。我怎样才能做到这一点?

最佳答案

我会这样做:

<select onchange="jsFunction()">
  <option value="" disabled selected style="display:none;">Label</option>
  <option value="1">1</option>
  <option value="2">2</option>
  <option value="3">3</option>
</select>

如果您愿意,可以使用与第一个选项相同的标签,在本例中为 1。 更妙的是:为方框中的选项贴上标签。

关于javascript - 如果新值与旧值相同,如何在 HTMLSelectElement 上触发更改事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11877527/

相关文章:

javascript - 在客户端 JavaScript 中,是否可以捕获事件并在稍后阶段触发它?

javascript - 更改在发生过程中创建框的速度(与 DOM "change"事件相关)

css - 如何在 ie7 中为选择/下拉菜单添加背景图片?

javascript - 如何在 ReactJs 中单击动态生成的 'Link' 时将值传递给页面?

javascript - 与对象属性同名的原型(prototype)属性

javascript - 将选择列表值分配给数组

javascript - 如何在 JavaScript 中禁用右键单击?

Html\CSS - 无法将自定义选择标签与自定义复选框对齐

javascript - 从选择值属性更改图像源

javascript - 如何向表单添加输入字段