2012-10-17 96 views
1

對於這個功課我必須寫檢查,如果被有效如下所示用戶名密碼,但如何將最後警告一下,如果前兩個警示存在嗎?的Javascript用戶名驗證

function isUserNameValid(user) { 
    "use strict"; 
    var alert = ""; 
    if (user.length > 12) { 
    alert("cannot be more than 12 letters long"); 
    return false; 
    } 
    alert = /^[A-Za-z]+$/; 
    if (!alert.test(user)) { 
    alert("must only use letters A-Z or a-z"); 
    return false; 
    } 
    alert = /^[A-Za-z]+$/;  //<--(this part is the question?) 
    if(user.length > 12 || if(!alert.test(user)) { 
    alert("must only use letters A-Z or a-z and cannot be more than 12 letters long)"; 
    return false; 
} 
return true; 
} 
+7

是休息後不要使用「警報」作爲變量名,否則沒有的,將工作。 – Pointy

+0

,因爲它正在檢查同前兩個警惕它永遠不會達到第三警報。把第3,如果在,而不是「||」的頂部和使用「&&」狀態。請參閱下面的答案 –

回答

0

把第一,如果下面和兩個

if(user.length > 12 && if(!a.test(user)) { 
alert("must only use letters A-Z or a-z and cannot be more than 12 letters long)"; return false; 
} 
+0

的代碼我使用的運行代碼的網站給了我一個錯誤說意外,如果(在if(!a.test(用戶))),如果我把它拿出來,我得到預期的令牌)? –