javascript - 当用户在输入字段中键入文本或将文本粘贴到其中时,如何触发 javascript 函数?

标签 javascript jquery input

$(document).ready(function() {
 $("input[id^='question']").live('keyup',function(ev){
    id=this.id.substr(8);
    if (ajaxCallTimeoutID != null)
    clearTimeout(ajaxCallTimeoutID);
ajaxCallTimeoutID = setTimeout(function(){subjectivecheck(id)}, 1000);
}); 
});

有问题。当用户将文本粘贴到输入字段时,无法触发上述函数。如何解决这个问题?

最佳答案

onchange 事件正是您想要的。当文本框失去焦点(模糊)并且自获得焦点以来其值发生变化时,它会触发。它解决了粘贴问题。

因此,不要使用 .live('keyup',,而是使用 live('change'

这已经是最好的了,没有使用一些荒谬的间隔轮询。仅出于上下文目的,请注意任何用户都可以随时在浏览器中禁用 Javascript。

关于javascript - 当用户在输入字段中键入文本或将文本粘贴到其中时,如何触发 javascript 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2004795/

相关文章:

javascript - 我不明白使用对象进行查找的 freecodecamp 挑战

javascript - 当用户向下滚动时显示内容

jquery - 提交包含 "???"字符串的 jQuery.ajax 数据,它将值更改为 "jQuery19107363727174233645_1373301489648?"

jquery - 使用 jQuery 删除全局属性

c++ - 实时键盘输入到控制台(在 Windows 中)?

jquery - 表单不提交动态生成的输入(jQuery)

javascript - 如何使用事件监听器向对象数组添加新元素并将其显示在 html 页面上(已编辑代码)

javascript - 如何从网站中找到特定的代码行,然后使用 javascript 将其显示在 html 文件上?

javascript - 鼠标悬停时暂停简单的推子脚本

jQuery - 在更改时重置文件输入