我当前的功能是关注事件 - propertychange change keyup input paste并发出ajax请求.但是ajax会在每封信上发送请求,我相信它不是一种有效的方法吗?或者是吗?
因此,我的目标是让用户输入输入,并且仅在3秒后执行ajax.使用setTimeout不起作用.
$(document).on('propertychange change keyup input paste', '#IDaccountSearchQueryInput', function (event) {
var query = $('#IDaccountSearchQueryInput').val();
setTimeout(function () {
console.log(query);
}, 5000);
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<input type="text" id="IDaccountSearchQueryInput">Run Code Online (Sandbox Code Playgroud)
这个片段给了我:
^ h
他
HEL
地狱
你好
你好
因此,它在每个按键上执行,但我需要每隔X秒执行输入值,而不是每个字母.