0

我只是在使用 JQuery 验证插件。我有以下规范:'如果表单在 10 秒内没有使用,给用户一个警告,如果他不做任何事情,还是提交它'

除了计时器等。我有这个代码来提交表格:

timeoutId = setTimeout(function() {

$("#session_expired").val("true");
$("form:first").validate({
                    onsubmit: false
                });
$("form:first").submit();
}, 10000);

它的作用:它设置某个隐藏字段值,然后提交表单。我添加了验证功能以确保在这种情况下它不会验证。但是你可能已经猜到了:它不起作用。

任何人有任何线索?

米歇尔

4

2 回答 2

1

尝试直接使用 DOM 方法而不是 jQuery submit 方法进行提交:

代替

$("form:first").submit();

和:

document.forms[0].submit();

我的猜测是:

$("form:first").validate({ onsubmit: false });

仅适用于通过提交按钮推送提交表单时。

于 2009-11-12T12:49:05.670 回答
0

我会删除函数的每个部分,然后对其进行测试,直到找到函数的哪个部分失败为止。我们还使用 firebug 和 console.log 来跟踪函数中发生的事情。例如

timeoutId = setTimeout(function() {
console.log('timeout')
}, 10000);
于 2009-11-12T10:27:16.310 回答