Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/371.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript。用户停止键入后提交表单_Javascript - Fatal编程技术网

Javascript。用户停止键入后提交表单

Javascript。用户停止键入后提交表单,javascript,Javascript,如何在用户完成输入后提交表单? 示例:用户开始键入。在介绍了几个人物之后就停止了。表单已提交。以下是一个示例 var timer; var doneTypingInterval = 3000; // wait 3 seconds var $input = $('input'); $input.on('keyup', function () { clearTimeout(timer); timer = setTimeout(doneTyping, doneTy

如何在用户完成输入后提交表单?
示例:用户开始键入。在介绍了几个人物之后就停止了。表单已提交。

以下是一个示例

var timer;              
var doneTypingInterval = 3000; // wait 3 seconds
var $input = $('input');

$input.on('keyup', function () {
  clearTimeout(timer);
  timer = setTimeout(doneTyping, doneTypingInterval);
});

$input.on('keydown', function () {
  clearTimeout(timer);
});

function doneTyping () {
  alert('done')
}
Html



但我不推荐这个。这可能会让您的用户感到恼火。

我希望此示例有助于:

HTML


这是可能的,但这是一个糟糕的设计。除非输入非常短,否则这可能会让您的用户非常恼火。我需要制作一个搜索表单,在每次输入之间暂停后向服务器发出请求。这是客户的愿望啊,这是有道理的。对不起,我是新来的。我想如果我粘贴JSFIDLE链接,它会自动粘贴代码。我的投票结果是相反的。发布fiddle链接是可以的,但是代码也应该发布在答案中。您也可以只发布堆栈片段,而不是fiddle链接。
<input type="text">
<form>
<input name="query" id="query">
<p id="message" > </p>
</form>
function submitForm(){
    //do some stuff
}

jQuery(document).ready(function(){
    window.timeout=null;
    jQuery('#query').on('keyup', function(event){
        clearTimeout(window.timeout);
        window.timeout = setTimeout(submitForm, 1000); // waits 1 second for user to press a new key 
    });
});