iOS 选择 onchange 不触发

新手上路,请多包涵

有谁知道这方面的任何解决方法?我正在尝试使用选择元素进行导航。它看起来像这样;

 <select onchange="window.location=(this.options[this.selectedIndex].value)">

它适用于所有桌面浏览器,也适用于我的 WP7 手机。它不适用于我的 iPhone (iOS 5.0)。

原文由 George Kendros 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 962
2 个回答

当您更改输入值时,iOS 往往不会触发 change 事件。我 在 Device-Bugs tracker 中对此进行了更深入的记录

解决方法是改为绑定到 blur 事件。在上面的示例中,使用 onblur 就可以了。

 <select onblur="window.location=(this.options[this.selectedIndex].value)">

原文由 Paul Irish 发布,翻译遵循 CC BY-SA 3.0 许可协议

如果将 onchange 更改为 onblur 它适用于 iOS,但不适用于其他。我最终得出的解决方案是同时使用 onbluronchange 。看似多余,却达到了预期的效果。

原文由 Danny 发布,翻译遵循 CC BY-SA 4.0 许可协议

推荐问题