Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
处理HTML5类型';电子邮件'';url';使用JavaScript_Javascript_Html_Html Email_Email Validation_Html Validation - Fatal编程技术网

处理HTML5类型';电子邮件'';url';使用JavaScript

处理HTML5类型';电子邮件'';url';使用JavaScript,javascript,html,html-email,email-validation,html-validation,Javascript,Html,Html Email,Email Validation,Html Validation,拥有 我想通知JavaScript输入的输入是否是电子邮件。“url”和其他HTML5输入类型也是如此 简单地说,是否存在任何“标志”或任何标志,表明HTML5类型的要求是否已得到满足?元素。有效性是一个包含许多有用内容的属性。其中最简单的是valid,它简单地告诉您它是否有效 document.getElementById('test')。oninput=function(){ document.getElementById('result')。textContent=this.vali

拥有


我想通知JavaScript输入的输入是否是电子邮件。“url”和其他HTML5输入类型也是如此


简单地说,是否存在任何“标志”或任何标志,表明HTML5类型的要求是否已得到满足?

元素。有效性是一个包含许多有用内容的属性。其中最简单的是
valid
,它简单地告诉您它是否有效

document.getElementById('test')。oninput=function(){
document.getElementById('result')。textContent=this.validity.valid?“valid!”:“Invalid。”
};

您可以检查状态

document.getElementById(“电子邮件”).addEventListener(“更改”,函数(){
console.log(this.validity.valid)
});

您可以使用
必需的
参数:

<input type="email" name="myEmail" />
(小心这个正则表达式大部分是错误的/不好的)

但实际上,你的目标是更新的浏览器,并不是每一个浏览器都有这个功能

最好的方法是使用Javascript使用我编写的正则表达式进行验证。你应该搜索一个适合你需求的表达式,因为互联网上有很多表达式

不要忘记,客户端发生的一切都可能被利用。使用Chrome,您只需点击F12并更改Javascript部分以检查验证。 当然,您还应该在服务器端脚本中执行正则表达式


Javascript和服务器端检查(与PHP一样)应该适用于大多数浏览器,因为浏览器不关心服务器端活动和自IE1(?)或至少在浏览器早期就存在的Javascript。

?Html5具有检查输入类型的基本验证。如果需要任何特定的验证,可以使用正则表达式进行验证。required属性将确保用户提交表单时输入字段不为空。我尝试了
adee@coinachgaaaaaa
而且它的说法是正确的!不太好。正如阿德尔所说,它不是100%起作用。我意识到这取决于浏览器对电子邮件类型的解释。不过,我很感激你的回答,将来一定会用这个。谢谢但是
adee@coinachgaaaaaa
是一个有效的电子邮件地址。它可能不存在,但它是有效的。我一定会用我的
niet避开你的网站。absol@fake.email.addresses.website
尽管我写过(小心,这个正则表达式大部分是错误的/不好的),但我主要还是想避免有人使用带有子域的电子邮件。但是如果我们要计算(已经错误/坏的清除)正则表达式的错误部分,我们还应该说有像.com.tr之类的TLD,所以
[a-z]{2,4}
也不是完美的。没错,你是这样做的,但即使有一个免责声明建议正则表达式检查电子邮件地址也是错误的。为什么?有什么好办法?因为它们可能不是完美的解决方案?“这里面可能有漏洞[…]”既然你们都是对的,我现在有一个巨大的难题,我应该检查哪个答案是正确的
<input type="email" required>
 <input type="email" required pattern="[a-zA-Z0-9-_]*@[a-zA-Z0-9-_]*\.[a-z]{2,4}">