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
});
});