2011-11-11 7 views
2

私は単純なHTMLを使用したいだけですテキストボックス<input type="text" />をパスワードボックス(<input type="password" />)とします。
内部に1文字入力するごとにまたはblack circlesが表示されます。(Javascript)どのようなタイプのテキストボックスでも、1文字のみを表示するにはどうすればよいですか?

「パスワード」ボックスでは、値を覚えておくことができます。私はそれを望んでいない。私が使っているのは、内部のパスワードの種類ではないということです。 通常の入力値ですが、周囲の入力からすべての入力を非表示にする必要があります。だから、値を覚えてブラウザで尋ねるのは避けたい

+0

私の作品:http://jsfiddle.net/nPAgv/ http://jsfiddle.net/EPRp4/

は実際のコードでは、私はここつもりポストそれをよかなり短いです - サンプルパスワードとして値を設定しました。 – Smamatti

+3

なぜパスワード入力を使用しないのですか? –

+2

パスワードタイプの使用を止めてはどうですか?ホイールを改造するのではなく、これを使うことができない理由は何ですか? –

答えて

0

誰もが元のポイントリクエストを逃していると思う:入力タイプのパスワードとしてTEXTBOX。

4lvinコミュニティから残ったコメントにあなたの本物の思いつきを表現することはできませんでしたが、私はあなたに魔法がほしいと思うか、元のリクエストで尋ねたものがほしいと思っています:TEXTBOX functionality入力タイプのパスワードの

ユーザーがキーストロークを傍受し、「元の」文字列に格納し、テキストボックスに「同じサイズ」の文字列(またはアスタリスク)を表示する必要があります。

これは不可能ではありません。 onKeyPress()を見てそこから行ってください。がんばろう!

ところで、ホイールをRE-INVENTして、通常の入力タイプのテキストに対して同じ操作を行うことができます。

EDIT:大丈夫です。大丈夫です。ユーザータイプ(または最後の1文字)に関係なく、1つの星を表示したいだけです。指示に従って(onKeyPress())、そこからビルドします。

1

手動でキーボードイベントをキャッチし、文字を "*"で置き換えることができます。後で使用する場合は、元の入力をどこかに保存する必要があります。私はここにjsfiddle作ら

$(document).ready(function(){ 
    var placeholder = ""; 

    $('input').keyup(function(){ 
     placeholder = $(this).val().replace(/./g,"*") 
     $(this).val(placeholder); 
    })  
}) 
+1

こんにちは、それは星を見せてくれるのですが...元のエントリーはどうですか?私はそれを自分で手抜きました。適切な答えが短すぎる(しかし、その考え方は有効です)。 origEntryの元のエントリをバッファリングする必要があります。そのためには、イベントリスナー(数行あります)が必要です。 –

関連する問題