提交后让表单暂停?

时间:2013-09-13 19:47:58

标签: javascript jquery html forms

我正在尝试设计一个Login表单,让我们这样说:

<form action="target.php" method="POST">
Username: <input type="text" name="user" id="user" /><br /><br />
Password: <input type="password" name="pass" id="pass" /><br /><br />
<input type="submit" value="submit" id="submit" />
</from>

我要做的是让表单在用户点击提交时显示一些pic.gif 3秒,然后继续我不希望它直接启动下一个进程。

3 个答案:

答案 0 :(得分:3)

最初使用样式“display:none”创建您的图片,并将您的表单声明修改为hanlde“onsubmit”事件:

<form action="target.php" method="POST" onsubmit = "mySubmit(this)">

然后定义函数:

function mySubmit(frm) {
    document.getElementById("myImg").style.display = 'block';
    setTimeout(function() {frm.submit()}, 3000);
    return false;
}

它将显示您的图像并取消原始提交请求。但是3秒后它将从代码中提交表格。

答案 1 :(得分:1)

听起来你可以使用setTimeout()函数。

<input type="submit" value="submit" id="submit" onclick="window.setTimeout(doStuffAfter, 30000)">

你以任何你想要的方式调用它,在延迟后调用func。因此,您可以打开图像,然后在延迟完成后离开。

 window.setTimeout(func, delay, [param1, param2, ...]); 

https://developer.mozilla.org/en-US/docs/Web/API/window.setTimeout

答案 2 :(得分:0)

尝试

$('form').submit(function () {
  if (showPic()) {
    return true;
  } else {
    return false;
  }
}

从用户体验的角度来看,我建议在你的照片中给他们提示。