2017-03-28 23 views
-1

こんにちは私は学校用の「安全なパスワード」プロジェクトを作成していますので、ユーザー入力に「!@ $%&#」があるかどうかを確認し、パスワードは安全です。ユーザーの入力に特定の文字が含まれていないか確認してください

これは、イムは、これをやって立ち往生:(

var password = document.getElementById('password'); 
 
var eMsg = document.getElementById('feedback'); 
 
var minLength = 6; 
 

 
function checkPass() { 
 
    if (password.value.length < minLength) { 
 
    eMsg.innerHTML = 'Password must have' + minLength + 'characters or more'; 
 
    } else { 
 
    eMsg.innerHTML = ''; 
 
    } 
 
}
<html> 
 
<head> 
 
    <title> Password Secured </title> 
 
    <link rel="stylesheet" href="style.css"> 
 
</head> 
 
    <body> 
 
    <h1 class="logo"> logo</h1> 
 
    <br/> 
 
    <br/> 
 
    <p class="input">Please type your password: <br/> <input type="text" id="password" /> 
 
     <div id="feedback"></div> 
 
    </p> 
 
    <br/> 
 
    <p class="answer"></p> 
 
    <br/> 
 
    <br/> 
 
    <p class="tips"> <br/>Tips tips tips </p> 
 
    </body> 
 
</html>

+0

の可能性のある重複しかし、それらの文字を持つことはありません - 任意の - 自分のパスワードを安全に。また、より建設的に、[正規表現](https://developer.mozilla.org/en/docs/Web/JavaScript/Guide/Regular_Expressions)について学び、試みをしてから、いつ助けを求めるか、またはもしあなたの試行された解決策が機能しない場合。あなたの学校がその提案をしており、能力がある場合は、パスワードのエントロピーを読んで、要件を改善することを強くお勧めします。 –

+0

@DavidThomas誰が気にします。それは学校のプロジェクトであり、生産準備が整ったエンタープライズソリューションではありません。 –

+1

@Micah:私は気にします。それが私がコメントした理由です。確かにそれは少しペタニック、かっこ悪い、または何でも、それでもそれを指摘する価値があると感じた。 –

答えて

1

を正規表現を使用してください。

// Returns TRUE if the string contains one of these characters. 
// Returns FALSE otherwise 
/[[email protected]$%&#]/.test(password) 
0

正規表現に

var password = document.getElementById('password'); 
 
password.addEventListener('blur',checkPass); 
 
var eMsg = document.getElementById('feedback'); 
 
var minLength = 6; 
 

 
function checkPass() { 
 

 
    if (password.value.length < minLength) { 
 

 
     eMsg.innerHTML = 'Password must have' + minLength + 'characters or more'; 
 

 
    } else if(/[[email protected]$%&#]/.test(password.value)){ 
 
     
 

 
     eMsg.innerHTML = 'Your password is secure'; 
 

 
    } 
 
    
 

 
}
<html> 
 
<head> 
 

 
<title> Password Secured </title> 
 

 
<link rel="stylesheet" href="style.css"> 
 

 
</head> 
 
    
 

 
<body> 
 

 
<h1 class="logo"> logo</h1> 
 

 
<br></br> 
 

 
<br></br> 
 

 
    
 

 
<p class="input">Please type your password: <br></br> <input type="text" id="password"/> <div id="feedback"></div> </p> 
 

 
<br></br> 
 

 
<p class="answer"></p> 
 

 
<br></br> 
 

 
<br></br> 
 

 
    
 

 
<p class="tips"> <br></br>Tips tips tips </p> 
 

 
    
 

 
</body>
を使用して、学校のためのプロジェクトです

0

正規表現を使用してコードを検索しています。 何をすべきことは以下の通りです:

document.getElementById("myInput").value.match(/[\!\\@\$\%\&\#]+/g) 

と、これは何も一致した場合、それは、あなたが適切にこれらの文字のいずれかにマッチしない場合は、確認してください。

関連する問題