javascript - 有更好的 onchange 吗?

标签 javascript

我有一个文本区域,当它发生变化时,我希望调用一个函数。

但是,标准 onchange 事件在焦点离开文本区域后触发。我真正想要的是在用户开始输入时立即触发事件。

我可以绑定(bind) onkeypress,但这不能处理用鼠标将文本粘贴到文本区域的情况。另外,它会针对 Tab 和其他不变的按键触发。

有更好的解决方案吗?

最佳答案

您可以添加

onkeyup="SomeFunction();"

编辑:啊,太快了。我没有看到“鼠标粘贴”。

编辑2:

<script type="text/javascript">
    var ival = "";
    var checkup = window.setInterval("checkChange();", 100);
    function checkChange() {
        var nval = document.getElementById("test").value;
        if (nval!=ival) { alert("change in the text"); ival=nval; }
     }
</script>
<input type="text" id="test" name="test" value="" />

示例来自:http://bytes.com/topic/javascript/answers/703623-capturing-event-when-user-right-click-paste-into-text-box

关于javascript - 有更好的 onchange 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/842200/

相关文章:

javascript - jquery 日期时间选择器 null 允许的时间

javascript - 包含所有 ascii 字符的字符串

javascript - 访问 dropzoneJS 文件的临时源

javascript - Vue.js:重新定义图表数据

javascript - jQuery 模态确认对话框未提交表单

javascript - 为什么这个 for/setTimeout() 代码实际上输出从 0 到 9 的数字?

javascript - 谷歌地图网络服务在本地工作但不在线

javascript - 如何让ng-options启用后运行?

javascript - 多次调用方法后返回相同 promise 的模式

javascript - Threejs - 仅使用 THREE.Points 动态计算相机位置