Javascript 需要Safari输入类型电子邮件
我有一个html/php的联系人表单,一切正常,但是在SAFARI浏览器中,如果我尝试联系/提交而不在所有输入框中写入表单,则表单无法验证 例如,我有Javascript 需要Safari输入类型电子邮件,javascript,php,html,safari,Javascript,Php,Html,Safari,我有一个html/php的联系人表单,一切正常,但是在SAFARI浏览器中,如果我尝试联系/提交而不在所有输入框中写入表单,则表单无法验证 例如,我有 <form> <input id="txtEmail" class="formincricao" type="email" required placeholder="email" value="" name="txtEmail"/> <input type="submit" name="btnSendInfo" v
<form>
<input id="txtEmail" class="formincricao" type="email" required placeholder="email" value="" name="txtEmail"/>
<input type="submit" name="btnSendInfo" value="send" id="btnSendInfo" />
</form>
所需的“不工作”也可以键入电子邮件。。。在safari中,不验证电子邮件
我尝试使用
var forms = document.getElementsByTagName('form'); for (var i = 0; i < forms.length; i++) {
forms[i].noValidate = true;
forms[i].addEventListener('submit', function(event) {
//Prevent submission if checkValidity on the form returns false.
if (!event.target.checkValidity()) {
event.preventDefault();
alert('Please, fill the form');
//Implement you own means of displaying error messages to the user here.
}bnbvds
}, false); }
var forms=document.getElementsByTagName('form');对于(var i=0;i
然而,html5的“required”关键字在safari中的效果不如在chrome中的效果好。您应该编写自己的javascript验证,或者使用其中的一种
现在,当单击该按钮时,将调用JavaScript函数SubmitFunction()。现在在这个函数中编写下面的代码
<script language="javascript">
function checkEmail() {
var email = document.getElementById('txtEmail');
var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
if (!filter.test(email.value)) {
alert('Please provide a valid email address');
email.focus;
return false;
}
}</script>
函数checkEmail(){
var email=document.getElementById('txtEmail');
变量过滤器=/^([a-zA-Z0-9\.\-])+\@([a-zA-Z0-9\-])+\)+([a-zA-Z0-9]{2,4})+$/;
如果(!filter.test(email.value)){
警报(“请提供有效的电子邮件地址”);
email.focus;
返回false;
}
}
现在,您已经成功地通过JavaScript验证了HTML控件。您可以发布PHP以及表单的其余部分和任何相关JavaScript吗?是的,我可以发布PHP和JavaScript。没问题是的,我明白。我尝试创建javascript验证。但是,我仍然无法验证电子邮件。您可以使用javascript正则表达式来确保存在@符号或类似符号。您好,谢谢。可以和表单一起使用吗?仍然发送表单。。。在空白处。。。无控制电子邮件
<script language="javascript">
function checkEmail() {
var email = document.getElementById('txtEmail');
var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
if (!filter.test(email.value)) {
alert('Please provide a valid email address');
email.focus;
return false;
}
}</script>