2017-10-20 6 views
0

javascriptでパスワードの最初と最後の文字のみを表示することはできますか?このよう : ***** - >電子*** 4パスワードの文字数をわずかに隠す

は、あなたが最初の間の文字の量をカウントする必要があるので、正規表現は、ここで少し奇妙であるあなたの助けのために非常に多くの

+0

VARにパスワードを保存し、あなたが「*」でコンテンツを置き換えるコピーを使用して、入力のキーイベントを使用するように複雑になることはないでしょう。やってみました ? – AxelH

+4

スタックオーバーフローはコード作成サービスではありません。新しいコーダーをサポートしてくれることを常に嬉しく思っています*しかし、あなたはまず自分自身を助ける必要があります。 : - )*自分でコードを書くことが期待されます。 [最小限で完全で検証可能なサンプルを作成する方法](https://stackoverflow.com/help/mcve)をお読みください。 –

+0

これはなぜ*望ましい*理由ですか?ユーザーは、画面に入力しているときではなく、パスワードの内容を確認する必要はありません。 – Terry

答えて

0

をありがとうと最後の手紙。しかし、部分文字列や配列を使う方がずっと簡単です。

var password = 'Example'; 
 
var parts = password.split(''); 
 
var len = parts.length; 
 
var chiffred = parts.map(function(val, index) { 
 
    if (0 === index || (len - 1) === index) { 
 

 
    } 
 
    else { 
 
val = '*'; 
 
    } 
 
    return val; 
 
}); 
 
chiffred = chiffred.join(''); 
 
console.log(chiffred);

2

あなたは隠された値にパスワードの値を変更し、passwordtextにからその型のプロパティを行うことができます。あなたが行くあり

$('#hintPassword').click(function(){ 
 
    $("#hiddenPassword").val($('#password').val()); 
 
    
 
    var passwordHint = $('#password').val().replace(/(?!^).(?!$)/g, '•'); 
 
    
 
    $('#password').attr('type', 'text'); 
 
    $('#password').val(passwordHint); 
 
}); 
 

 
$('#hidePassword').click(function(){ 
 
    $('#password').attr('type', 'password'); 
 
    $('#password').val($("#hiddenPassword").val()); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input type="hidden" id="hiddenPassword"> 
 
<input type="password" id="password" value="pa$$w0rd"> <button id="hintPassword">Hint</button> <button id="hidePassword">Hide</button>

0

! substrとsliceを使って文字列を扱うというコンセプトが必要です。 ちょうどいくつかの正規表現。

var input = document.getElementById('password'); 
 

 
input.addEventListener('keydown', function(){ 
 
\t if(input.value.length > 1){ 
 
    \t input.value = input.value.substr(0, 1) + input.value.substr(1, input.value.length).replace(/[\S\s]/g, "*"); 
 
    } 
 
});
<input type = "text" id = "password" />

関連する問題