2015-10-25 337 views
-1

我对JavaScript很陌生,而且我有点困惑。如何检查我的输入字段:检查输入字段是否包含@

<form name='formular' method='post' onsubmit='return atcheck()'> 
E-mail <input type='text' name='email' id='em'> 
<input type='submit' value='Submit'> 
</form> 

包含符号“@”?我不是在寻找一个完整的电子邮件验证,我只是想检查该字段是否包含该符号,特别是在提交时(在atcheck()函数中)。

+0

[ String.prototype.includes(https://devdocs.io/javascript/global_objects/string/包括) –

+0

Btw输入类型=“电子邮件”也存在;-) –

回答

-1

使用indexOf()功能

indexOf() documentation

让你的函数文本,你需要使用document.getElementById("em").value

+0

如何指向它以查找我的? –

+0

,使用getElementById获取dom元素,获取内部文本并使用函数检查它。您还可以使用RegEx并包含函数。有太多的选择。 @Downvoter谨慎解释为什么downvote? –

+0

谢谢,我明白了。我非常了解php,但是我之前从未碰过JavaScript。对于“愚蠢”的问题抱歉,但我发现很难搜索某些东西,检查某个特定位置是否包含某个符号。我发现的大多数帮助只能验证电子邮件。 –

1
<script language="Javascript"> 
function atcheck(){ 
    if(document.getElementById('em').value.indexOf('@') === -1) { 
     // No @ in string 
     return false; 
    } else { 
     // @ in string 
     return true; 
    } 
} 
</script> 
0

这里有一种方法来实现这一目标:

function atcheck() { 
    var has_at_char = document.getElementById("em").value.indexOf("@") > -1; 

    if (has_at_char) { 
     return false; 
    } 

    // your previously exisiting implementation of atcheck() could follow here 
} 
+0

最好是添加一些评论,而不是只是在那里扔代码。 –