需要Safari输入类型的电子邮件

Safari input type email required

本文关键字:电子邮件 类型 输入 Safari 需要      更新时间:2023-09-26

我在html/php中有一个联系人表单,一切正常但是在SAFARI浏览器中如果我尝试联系/提交而不在所有输入框中写入表单将不验证

例如,我有
<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); }

然而仍然不工作

html5的'required'关键字在safari中并不像在chrome中那样好用。您应该编写自己的javascript验证,或者使用许多预先推荐的验证库之一。

<input type='text' id='txtEmail'/>
<input type='submit' name='submit' onclick='Javascript:checkEmail();'/>

现在,当按钮被点击,然后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>

现在你已经成功地通过JavaScript验证了你的HTML控件。