在onsubmit之后如何清除纯HTML表单?

时间:2009-06-15 19:01:54

标签: javascript html

onsubmit事件被触发并且表单已经提交(通过action =“mailto:yournamehere@somebox.com”),有没有办法可以清除表单,关闭窗口或者什么?是否有可以通过JavaScript挂钩的帖子提交。这必须是仅客户端解决方案。

4 个答案:

答案 0 :(得分:14)

快速简便的解决方案:

<form action="mailto:email@email.com"
    onsubmit="this.submit(); this.reset(); return false;">

答案 1 :(得分:2)

function submit_form() {
document.formu1.submit();
document.formu1.reset(); 
}
<form name="formu1" action="action-page" method="POST" target="_blank" />
Name: <input type="text" name="name" /><br /><br />
Pass: <input type="password" name="pass" /><br /><br />
<input type="button" value="Send" onclick="submit_form();" />
</form>

答案 2 :(得分:1)

没有这样的事件。

你可以通过以下方式破解它:

// Begin anonymous wrapper function to limit the scope of variables
// and avoid namespace collisions.
(function () {
  // Get a quick reference to the form. 
  var f = document.forms.myForm;
  // Define a submit handler that won't actually
  // do anything until after the form has "submitted"
  f.onsubmit = function () {
    setTimeout(f.reset, 1000);
  }
}());

...但是action =“mailto:...”支持不当,所以你应该使用真正的表单处理程序而不是试图破解limitations of mailto:

答案 3 :(得分:0)

您可以简单地输入:

document.getElementById("myform").reset();

在您的onSubmit()处理函数中。