设置执行Javascript函数的时间?
我的Wordpress插件中连接了以下函数设置执行Javascript函数的时间?,javascript,jquery,settimeout,Javascript,Jquery,Settimeout,我的Wordpress插件中连接了以下函数 function before_submit() { document.getElementById('page-loader').style.display='block'; } 此钩子在提交表单之前被调用。现在,我想做的是在实际提交表单之前,获取divid页面加载器的特定秒数。我读过关于settimeout函数的内容,并尝试了一些东西,但我无法让它工作。我猜settimeout函数是在一定的秒数之后运行脚本,而不是在一定的秒数之后运行脚
function before_submit() {
document.getElementById('page-loader').style.display='block';
}
此钩子在提交表单之前被调用。现在,我想做的是在实际提交表单之前,获取divid页面加载器
的特定秒数。我读过关于settimeout函数的内容,并尝试了一些东西,但我无法让它工作。我猜settimeout函数是在一定的秒数之后运行脚本,而不是在一定的秒数之后运行脚本,对吗
因此,我希望脚本的“运行时间”为4秒。现在它运行脚本并立即提交表单
尝试过这个,但不起作用:
function before_submit()
{
function partA() {
document.getElementById('page-loader').style.display='block';
window.setTimeout(partB,1000)
}
function partB() {
//let's go submit the form
}
}
请帮帮我。
非常感谢你 这可能对你有用。
首先在单击按钮上调用before_submit函数,然后调用page loader函数,几秒钟后它将提交表单
<form action="asd.html" method="post" id="myForm">
<input type="button" onclick="before_submit()" />
</form>
<Script>
function before_submit()
{
// document.getElementById('page-loader').style.display='block';
setTimeout(to_submit_form,5000);
}
function to_submit_form(){
alert("submit");
document.getElementById("myForm").submit();
}
</script>
_submit()之前的函数
{
//document.getElementById('page-loader').style.display='block';
setTimeout(提交表格,5000);
}
提交表单()的函数{
警报(“提交”);
document.getElementById(“myForm”).submit();
}
您必须防止默认行为,例如使用
这是您正在寻找的格式:
// Note, in the fiddle, this is run during the window.onload event.
var test = document.getElementById('test');
test.addEventListener('submit', function before_submit(e){
document.getElementById('wait').style.display = 'block';
setTimeout(function wait(){
// After waiting for five seconds, submit the form.
test.submit();
}, 5000);
// Block the form from submitting.
e.preventDefault();
});
我不确定是否理解您的要求,但请检查功能运行几秒钟是什么意思?一旦你运行了它,就是这样。你是通过Ajax提交表单的吗?如果是这样,
setTimout
将不起作用,请使用回调函数希望用户单击按钮,并让代码延迟表单提交,直到计时器完成为止?请让函数设置样式,然后它可以使用setTimeout
在一定时间后运行另一个函数来提交表单。您不会使用setInterval()
。为什么要每3秒钟连续重新提交一次表单?抱歉,请再次检查此项。。!(测试)谢谢,看看你在做什么,但它不起作用。由于某些原因,表单不会等待提交表单。。它在完成加载后发送表单。我还尝试将to_submit_表单
实现到before_submit
中,但没有成功…尝试添加该表单,但它到底应该做什么?在提交()之前,函数需要什么代码?函数在提交()之前{//document.getElementById('page-loader').style.display='block';setTimeout(to_submit_form,5000);}函数在提交表单()之前{alert(“submit”);document.getElementById(“myForm”).submit()将不起作用,出于某种原因,它只是提交表单。@TT-因为您必须阻止submit
事件;wormonic显示的内容不起作用,因为返回false
位于错误的元素上。更多详细信息,请参阅我的答案(使用不同的表单阻止提交)。Jared是对的,请这样尝试。非常感谢您的回复。我查看了JSFIDLE,这确实是我想要的。然而,我试图以我的形式实现这一点,但无法让它像那样工作。我的表单id=form11
,我的等待div id是页面加载器
。如何在我的代码中实现这一点?再次感谢!您是否注意到在窗口.onload
事件中提到它正在运行?如果能投上一票,并标上答案,那就太好了<代码>;)代码>谢谢,我应该可以从这里找到答案(Y)