我一直在寻找超过2天的时间来解决我的这个问题。通过堆栈上的所有相关帖子,但没有运气。我有一个接受数据的表单,然后传递给php程序来处理它,然后调用html感谢页面。我对Javascript或JQuery一点也不熟悉,但是花了一些时间才能使它工作。我在这里发布代码以及许多我试图无效的建议。任何帮助结束我的痛苦的人都会受到赞赏。谢谢。
<form method='post' action='contact-form-proc.php' name='contactform' id='contactform' onsubmit="setTimeout('clear_form()',200);return true">
<p>
<label for='fullname'>Your Name:</label><br/>
<input type='text' name='fullname' />
</p>
<p>
<label for='email' >Email Address:</label><br/>
<input type='text' name='email' />
</p>
<p>
<label for='mobile' >Mobile:</label><br/>
<input type='text' name='mobile' />
</p>
<p>
<label for='checkIndate' >Check in Date:</label><br/>
<input type='text' name='checkIndate'/>
</p>
<p>
<label for='comment' >Comment:</label><br/>
<textarea name='comment' cols='25' rows='3'></textarea>
</p>
<input type="image" src="submit.gif" name="submit"/>
<!--<input type='submit' name='submit' value='' id="submit" />-->
<input type="hidden" name="submit" value="Submit"/>
</form>
<?php
if(empty($_POST['submit']))
{
echo "Form is not submitted!";
exit;
}
if(empty($_POST["fullname"]) ||
empty($_POST["email"]))
{
echo "Please fill the form";
exit;
}
$name = $_POST["fullname"];
$email = $_POST["email"];
$mobile = $_POST["mobile"];
$checkindate = $_POST["checkIndate"];
$comment = $_POST["comment"];
mail( 'xxx@xxxxxx.com' , 'New form submission' , "New form submission: Name: $name, Email:$email, Mobile: $mobile, CheckIndate:$checkIndate, Comment:$comment" );
header('Location: thank-you.html');
?>
<script type="text/javascript">
/*$('#contactform').trigger("reset");*/
function clear_form() {
/* document.contactform.reset();
document.getElementById("contactform").reset();*/
/*$(window).load(function() {
$('#contactform input[type="text"]').val('');*/
$(window).load(function() {
$('#contactform').children('input').val('');
}
});
}
</script>
答案 0 :(得分:1)
非常感谢您抽出时间,并试图帮助我和所有其他人解决这个奇怪的问题。
我找到了一个解决方案。我保留了一切,并且另外,
一个。写了一个函数来重置表单, 湾将该函数添加到body元素的onload和onunload处理程序中。
如下:
<script>
function clearForms()
{
var i;
for (i = 0; (i < document.forms.length); i++) {
document.forms[i].reset();
}
}
</script>
<body onload="clearForms()" onunload="clearForms()">
希望它可以帮助并阻止像我这样的人浪费宝贵的时间和日子。问候。
答案 1 :(得分:0)
尝试这个。
<script type="text/javascript">
$(document).ready(function(){
$('input').val('');
});
</script>
结束你不必调用onsubmit动作,document.ready就足够了。