2015-10-25 231 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

最好是添加一些評論,而不是隻是在那裏扔代碼。 –