gpt4 book ai didi

javascript - 如何清除Timeout这个函数?

转载 作者:行者123 更新时间:2023-11-30 08:37:12 25 4
gpt4 key购买 nike

如何清除这个函数的超时?

这是我的代码,我试过了但不行。

我该怎么做?

................................................ ..................................................... ..................................................... …………

<form id="fid">
<input type="text" id="input_type" onkeypress="stop()" onkeyup="run()"/>
</form>

<p id="myplace"></p>

<script>
function run() {
$('#myplace').hide();
setTimeout(function(){
$.ajax
(
{
url: 'xx.php',
type: 'POST',
data: $('#fid').serialize(),
cache: false,
success: function (data) {
$('#myplace').show();
$('#myplace').html(data);
}
}
)
}, 3000);
}

function stop() {
clearTimeout();
}
</script>

最佳答案

您需要传递timeoutID。参见 https://developer.mozilla.org/en-US/docs/Web/API/WindowTimers/clearTimeout .

为了不污染全局范围(使用 timerrunstop),我将所有内容包装在 jQuery 的就绪处理程序中并用它来绑定(bind)事件处理程序

<form id="fid">
<input type="text" id="input_type">
</form>
jQuery(function($) {

var myplace = $('#myplace'), form = $('#fid'), timer = null;

$('#input_type').on({
keypress: function() {
clearTimeout(timer);
},
keyup: function() {
myplace.hide();
timer = setTimeout(function() {
$.post('xx.php', form.serialize(), function(data) {
myplace.html(data).show();
});
}, 3000);
}
});
});

关于javascript - 如何清除Timeout这个函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30295777/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com