2016-05-12 4 views
1

Ich habe eine Zwangslage, wo ich eine Standard-Text-Eingabefeld benötigt, um wie eine Passworteingabe ohne das Attribut type = password zu handeln.Verwenden Sie eine Texteingabe als Passwort html JavaScript aber nicht type = Passwort

Der Grund dafür ist, dass die App aus einem bestimmten Grund nicht Passwort-Manager ausgelöst werden soll.

Im Grunde dachte ich

<script> 
var mypw =""; 
</script> 

<input type="text" onkeydown="updatethis(this)"  onpaste="updatethis(this)"> 

Danach bin ich verloren, aber irgendwie will ich das pw in mypw und dem Eingang nur zeigt eine Sicherheits char gespeichert werden.

Wieder ist die Notwendigkeit sehr einzigartig, aber ich muss vermeiden, dass Passwort-Manager in diesem einen Szenario auslösen.

+0

Ich brauche es in allen Browsern zu arbeiten. Edge und ie unterstützen nicht. – VinnieS

Antwort

0

ich die Farbe und den Hintergrund weiß Wechsel beendet, dann einen Teiler rechts oben auf ihm abgebildet und in jquery aktualisiert. Hier

     <input class="noselect" type="text" id="password" 
          placeholder="Click2Mail Password" name="password" value="" onkeyUp="updatePW();" 
          required><div id="pwchar" onclick="$('#password').focus();" style="font-weight: 300;font-size:14px;position:absolute;top:0px;left:0;margin-top:12px;margin-left:38px;z-index:999999999999999999;"></div> 

ist die jquery

function updatePW() 
{ 

    $("#pwchar").html($('#password').val().replace(/./g,"*")); 
} 

und zuletzt die CSS um sicherzustellen, dass Sie nicht den Text in das Feld auswählen können

#password{ -webkit-text-security: disc;background-color:#fff;color:#fff; 
} 
.noselect { 
    -webkit-touch-callout: none; /* iOS Safari */ 
    -webkit-user-select: none; /* Chrome/Safari/Opera */ 
    -khtml-user-select: none; /* Konqueror */ 
    -moz-user-select: none;  /* Firefox */ 
    -ms-user-select: none;  /* Internet Explorer/Edge */ 
    user-select: none;   /* Non-prefixed version, currently 
            not supported by any browser */ 

} 

Es ist auf jeden Fall nicht die perfekte Lösung, aber es funktioniert .

1

Sie meinen etwas wie?

input{ 
 
    -webkit-text-security: disc; 
 
}
First name:<br> 
 
<input type="text" name="firstname">

+0

Ich brauche es in allen Browsern zu arbeiten. Edge und ie unterstützen es nicht. – VinnieS

Verwandte Themen