一段时间后提交表单的jQuery计数器:如何获取当前值以提交表单?

Posted

技术标签:

【中文标题】一段时间后提交表单的jQuery计数器:如何获取当前值以提交表单?【英文标题】:jQuery counter that submits a form after some time: How to grab the current value in order to submit the form? 【发布时间】:2018-12-19 18:28:57 【问题描述】:

我想在 jQuery 中显示一个计数器,当它达到 10 分钟时它会提交一个表单。

这是我的 html 计数器:

<span id="minutes"></span>:<span id="seconds"></span>

这是我正在做的 jQuery(我确实有计数器,但我不知道如何检索它的值以便做某事,因为我已经尝试使用 val() 但我所做的只是get 是一个空字符串):

var sec = 0;
 function pad ( val )  return val > 9 ? val : "0" + val; 
 setInterval( function()
 var segundos = $("#seconds").html(pad(++sec%60));

 var minutos = $("#minutes").html(pad(parseInt(sec/60,10)));
, 1000);

这是CodePen

过程应该是计数器达到10分钟后,表单中会触发.submit(),但是如何获取计数器的值呢?

如果我这样做 console.log(minutos); 什么都不会出现。

谢谢!

【问题讨论】:

【参考方案1】:

setInterval(...) 将每 X 毫秒触发其函数内的代码。因此无需检查值,只需将您的提交放入其中即可。但是,它将每 10 分钟发生一次,而不仅仅是一次。我会使用设置超时:

setTimeout(function() $('#myForm').submit() , 60000 * 10);

这将在 10 分钟后提交 ID 为“myForm”的表单。

【讨论】:

以上是关于一段时间后提交表单的jQuery计数器:如何获取当前值以提交表单?的主要内容,如果未能解决你的问题,请参考以下文章

在jQuery中直接提交表单后怎么获取返回值

jQuery:如何获取表单提交时点击了哪个按钮?

如何使用 jQuery 重新填充表单提交时隐藏的 CSV 字段

当 jquery.validate 验证表单时启用提交按钮

表单提交后用history.back()的问题(本人用thinkPHP)

表单提交后如何防止页面重新加载 - JQuery