是否有必要将页面扩展名从.html更改为.php或.aspx以制作工作表单?
我正在制作单页网站。我需要在页面上创建一个包含3或4个字段的表单。并且表单的数据应该转到我将定义的电子邮件地址。
是否可以仅使用.html
页面使用jquery / javascript制作和提交表单。?
或如果我iframe
页面中的.html
形式不可能,那么它会起作用吗?
答案 0 :(得分:1)
您需要使用服务器端脚本语言来处理表单。根据您的服务器,您可以向页面添加所需的任何扩展名,并使用服务器重写引擎在内部将其重定向到.php页面。
您也可以非常轻松地使用ajax将表单提交到.php脚本而不进行重写但是没有javascript,表单会失败或者用户会看到.php扩展名。
答案 1 :(得分:1)
您在询问是否需要服务器端代码(因为服务器端脚本可以包含任何扩展名,包括html
)。答案是肯定的,如果您要发送电子邮件,则需要代码。也可以使用iframe,表单将通过Iframe嵌入到HTML页面中。
如果你想要做的就是为页面添加html
扩展名,你应该使用网络服务器的重写功能,而不是iframe。
此外,来自this page:
如果你打算拥有你的 整个网站显示为静态HTML页面 而实际上是由...生成的 (比方说)PHP,而不仅仅是孤立的 如上所述的页面,更简单 比上面概述的方法是 只需将以下行添加到您的 .htaccess文件:
AddType application/x-httpd-php .html
答案 2 :(得分:0)
如果您没有使用任何服务器端脚本语言,那么您将无法自动发送邮件。要发送邮件,您需要邮件服务器。
但是如果您想让用户自己发送邮件,那么您可以使用“mailto:
”功能。使用邮件可以弹出用户的前景,甚至也可以使用GMAIL。
但在这里,责任是用户的责任。如果用户不想发送邮件,那么他/她可以。
<form action="mailto:you@youraddress.com" enctype="text/plain"
method="POST" onsubmit="sendMail(this);return false;">
<select name="selOne">
<option value="Dog">Dog</option>
<option value="Cat">Cat</option>
</select>
<textarea name="txtOne"></textarea>
<input type="submit" value="Submit" />
</form>
<script type="text/javascript">
function sendMail(_frm) {
var eml = "you@youraddress.com";
var bod = "&body=" + _frm.selOne.value + " ¦¦ " + _frm.txtOne.value;
var subj = "?subject=Whatever you want";
location.href = "mailto:" + eml + subj + bod;
}
</script>
有关详情,您可以谷歌搜索“使用JavaScript的mailto”。 如果您使用的是任何服务器端语言,则情况就不同了。