Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/390.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
Javascript 检查字段是否包含@_Javascript_Forms_Validation - Fatal编程技术网

Javascript 检查字段是否包含@

Javascript 检查字段是否包含@,javascript,forms,validation,Javascript,Forms,Validation,我正在使用javascript检查表单中的字段是否为空。 一切都很好,它还检查字段中的字符数量 但是现在我想检查email字段是否包含“@”和至少一个“.”,否则它将给出(相同)错误消息 我希望有人能帮助我 小提琴: 函数有效(fldId,len){ 变量fld=$(“#”+fldId); var val=fld.val(); window.console&&console.log(fld,fldId) if(val==“”| |(len&&val.length0){ window.conso

我正在使用javascript检查表单中的字段是否为空。 一切都很好,它还检查字段中的字符数量

但是现在我想检查email字段是否包含“@”和至少一个“.”,否则它将给出(相同)错误消息

我希望有人能帮助我

小提琴:

函数有效(fldId,len){
变量fld=$(“#”+fldId);
var val=fld.val();
window.console&&console.log(fld,fldId)
if(val==“”| |(len&&val.length0){
window.console&&console.log(“存在错误”);
$(“.error messages”).html(errormessage.join(“
”).fadeIn(); 返回false; } window.console&&console.log(“成功”); 返回true; }); });
我不会只检查它是否有电子邮件地址就这样做。我会用一个官方的正则表达式来匹配电子邮件。但是,如果不能使用正则表达式,请使用此

var str="name@example.com";
if(str.indexOf("@")===-1 ||str.indexOf(".")===-1){
    alert("Your email address must include one @ sign and one period");
}
将此正则表达式用于其


验证电子邮件的最佳方法是使用正则表达式。实际上没有一个很好的“一刀切”的正则表达式可以捕获所有有效类型的电子邮件,因为实际的规范允许存在一些有趣的地址,即使它们不是很流行和广泛使用。 你可以看看

在您的
isValid
中,您可以添加如下内容

if ('fldId' === 'email') {
    return /.+@.+\..+/.test(val);
}
regex
/.+@.+\..+/
只检查任何包含一些字符的内容,并且@,一些字符是一个点,之后还有一些字符。这基本上是对电子邮件地址最简单的检查。你可以从链接中更改一些更好的


另外,你可以看看html5的优点<代码>输入带有
type=email
的字段将在某种程度上自动得到现代网络浏览器的验证,而且很有可能它们的验证效果会比在网络上闲逛时更好。

所以你只想要电子邮件验证?可以使用正则表达式:
/^\s*[\w\-\+\+\+++(\.[\w\-\+\+\+++)*\@[\w\-\+\+\++\.[\w\-\+\+\++)*\s*$/
谢谢您的快速回答!我正在搜索我必须在我的JS中放置代码的位置,找不到解决方案如果你使用HTML5,请使用
/“`抱歉再次打扰你,但你能在我的小提琴中编辑它吗?似乎仍然做不到work@ErwinvanEkeren我认为这是因为您正在手动重写
onsubmit()
谢谢你的回答,你认为你有时间帮我把它放在小提琴上吗?我好像没法让它工作?
/^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/
if ('fldId' === 'email') {
    return /.+@.+\..+/.test(val);
}