我有一张表格:
<form action="something.php" method="POST">
<input type="email" name="email"/>
<input type="submit" value="Send Email"/>
</form>
当有人试图输入一些不是电子邮件格式的字符串时,表单不会让他。唯一的问题是这不适用于Safari!为什么!!!! http://www.w3schools.com/html/html5_form_input_types.asp
那么我可以使用什么超级简单的工作?谢谢
答案 0 :(得分:2)
让我们在这一点上非常清楚:虽然有些HTML客户端会尊重input type
,但有些人不会,即使他们这样做,也不会阻止任何人伪造HTTP请求字段不是电子邮件地址。因此,您可以依靠<input type=email>
向用户提供有关该字段应该包含的内容的提示,但您不应该依赖它来确保只有电子邮件地址才能使其成为您的PHP脚本。
所以有些浏览器支持它,但Safari没有。这就是它的全部内容。
然后,正确的解决方案是进行服务器端验证,如果它不是电子邮件地址则使其失败。您可以使用regular expressions进行相对轻松的检查。