2017-09-06 82 views
0

我正在爲我的表單使用電子郵件驗證腳本。我試圖添加一個函數,如果電子郵件字段包含特定的垃圾郵件域,如「mail.ru」等,則返回TRUE ...這是我的,這是行不通的。任何幫助,將不勝感激!電子郵件字段驗證

此外,任何方式來擴大這個添加多個值來搜索電子郵件輸入?

「電子郵件」是我的表單中的字段名稱。

謝謝,尼克

function DoCustomValidation() { 
    var frm = document.forms["contactus"]; 
    if (frm.Email.value.includes("mail.ru")) { 
     sfm_show_error_msg('Sorry, no spam allowed!'); 
     return false; 
    } else { 
     return true; 
    } 
} 
+1

你能給什麼是不工作的細節?會出現什麼錯誤?它發生在哪一點? – andrewf

回答

0

應該是這樣的

function DoCustomValidation() { 
    var frm = document.forms["contactus"]; 
    var spams = ['mail.ru', 'something.ru']; //Keep spam sites in this array 
    var i, token = frm.Email.value, hasSpam = false; 

    for (i = 0; i < spams.length; i++) { 
    if (token.includes(spams[i])) { 
     hasSpam = true; 
     break; 
    } 
    } 

    if (hasSpam) { 
    sfm_show_error_msg('Sorry, no spam allowed!'); 
    } 

    return hasSpam; 
} 
+0

'return includeSpam'該變量未定義。 – fubar

+0

謝謝,它應該是hasSpam。它已被糾正 –

+0

非常感謝您的幫助!上述解決方案工作。 –