监听输入文本字段更改的最推荐方法之一是将该字段绑定(bind)到按键事件。在大多数情况下都可以正常工作。但在某些情况下这是行不通的。例如,在 Firefox 中,当文本已被选中时,可以使用上下文菜单将其删除。这不会触发按键事件。执行此操作时,我没有发现为该文本字段触发的任何事件。 有什么建议我可以对此使用react(使用纯 Javascript 或 jQuery)吗?
最佳答案
查看 oninput
事件,以及我写的关于它的文章 here .
oninput
为所有形式的文本输入触发 - 包括剪切、粘贴、撤消、重做、清除、拖放和拼写更正。这是一个 HTML 5 事件,在 Internet Explorer 8 及更低版本中不受支持(但在最新的 IE 9 预览版中支持)。但是,Internet Explorer 支持所有 DOM 对象的专有事件 - onpropertychange
。只要输入元素的值发生变化,就会触发。
我没注意到你用 jquery 标记了— 既然你这样做了,可能值得一提的是我编写了一个插件来跨浏览器实现 oninput
事件。你可以找到它here .
关于javascript - 监听输入值的删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4213941/