Passwortfeld auf länge testen
Bei diesem Beispiel wird vor dem Absenden angezeigt, ob das Passwort mindestens 8 Zeilen lang ist
Kommentar abgeben zu diesen Beitrag/Code ?Dann hier klicken
Der hier verwendete Code
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Passwortvalidierung</title>
<style>
form {
border: 3px solid #f1f1f1;
}
input[type=text], input[type=password] {
width: 100%;
padding: 12px 20px;
margin: 8px 0;
display: inline-block;
border: 1px solid #ccc;
box-sizing: border-box;
}
button {
background-color: #4CAF50;
color: white;
padding: 14px 20px;
margin: 8px 0;
border: none;
cursor: pointer;
width: 100%;
}
button:hover {
opacity: 0.8;
}
button:disabled {
background-color: grey;
}
.container {
padding: 16px;
}
@media screen and (max-width: 300px) {
span.psw {
display: block;
float: none;
}
}
</style>
</head>
<body>
<form>
<div class="container">
<label for="psw"><b>Passwort</b></label>
<input type="text" placeholder="Passwort eingeben" name="psw" id="passwordInput" required>
<p id="msg"></p>
<button id="passwordButton" disabled="true">Passwort speichern</button>
</div>
</form>
</body>
<script>
var val=document.getElementById("passwordInput");
var msg = document.getElementById("msg");
var but=document.getElementById('passwordButton');
but.addEventListener('click',function(){
alert('senden ist erlaubt')
})
val.addEventListener('keyup',function(){
var lang,leer;
var message='';
if (val.value=="") {
message+= "Das Passwortfeld ist leer<br>";
leer='false';
}else{
leer='true';
}
if (val.value.length < 8) {
message+= "Das Passwort muss mindestens 8 Zeichen lang sein!<br>";
lang='false';
}else{
lang='true';
}
if (lang=='true' && leer=='true') {
but.style.color = "green";
but.disabled = '';
} else {
but.style.color = "red";
but.disabled = 'true';
}
msg.innerHTML=message;
})
</script>
</html>