1

CTRL + V在文本框上按下时,按键未检测到。我看过一个和我类似的帖子。但是我们有不同的实现。如果用户空闲输入 1.5 秒,我想触发 ajax 请求。

$(document).ready( function() {
    $(document).on('keypress', '#subject-name', function() {
        updateTimeOut( this, checkSubject );
    });   
});

方法updateTimeOut()是这样的:

var updateTimeOut = function( textBoxObject, ajaxCall ) {
                         if (timeoutReference) clearTimeout(timeoutReference);
                         timeoutReference = setTimeout(function() {
                                doneTyping.call( textBoxObject, ajaxCall );
                         }, 1500);
                    };

我的问题是。更好用change不是最适合我的任务吗?change也可以用间隔做检查吗?

4

1 回答 1

2

是的,您想知道值何时更改,无论它是如何发生的,按键与否(例如右键单击文本框和左键单击粘贴)。

这应该适合你

$(function() {
    $(document).on('input', '#subject-name', function() {
        updateTimeOut(this, checkSubject);
    });   
});

仅供参考,$(function() {})$(document).ready(function() {}).

于 2013-11-04T06:14:22.757 回答