我有一个 HostGator 提供的基本 HTML/JavaScript 联系表。它工作得很好……如果用户没有提交姓名或无效的电子邮件地址,则会弹出一个 JavaScript 警报,说明是这样。这些警报会一直显示在屏幕上,直到用户单击“确定”。但是,如果用户正确提交了联系表单,最终的成功警报只会持续 1/2 秒左右。我试图弄清楚如何使最终的电子邮件成功警报持续指定的时间,或者直到用户单击“确定”按钮,此时他们被重定向到指定的页面。这是带有 JavaScript 的联系表上 HostGator 信息的链接http://www.hostgator.com/formmail.shtml这是我试图更改的代码,以使提交后的 JavaScript 消息保持不变,而不是在用户甚至有机会阅读它之前消失。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>FormMail Demo</title>
<script type="text/javascript">
function hgsubmit()
{
if (/\S+/.test(document.hgmailer.name.value) == false) alert ("Please provide your name.");
else if (/^\S+@[a-z0-9_.-]+\.[a-z]{2,6}$/i.test(document.hgmailer.email.value) == false) alert ("A valid email address is required.");
else if (/\S+/.test(document.hgmailer.comment.value) == false) alert ("Your email content is needed.");
else {
document.hgmailer.submit();
alert ('Thank you!\nYour email is sent.');
}
}
</script>
</head>
<body>
<form action="http://www.mydomain.com/cgi-sys/formmail.pl" method="post" name="hgmailer">
<input type="hidden" name="recipient" value="myemail@mydomain.com">
<input type="hidden" name="subject" value="FormMail E-Mail">
Whatever you want to say here<br><br>
Visitor Name: <input type="text" name="name" size="30" value=""><br>
Visitor E-Mail: <input type="text" name="email" size="30" value=""><br>
E-Mail Content: <textarea name="comment" cols="50" rows="5"></textarea><br><br>
<input type="button" value="E-Mail Me!" onclick="hgsubmit();">
<input type="hidden" name="redirect" value="http://www.mydomain.com/redirect-path">
</form>
</body>
</html>