人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

HTMLのINPUTタグにおいて、type="password"としたときの伏せ文字(●とか)を変更することは可能でしょうか?

●質問者: mamekko
●カテゴリ:インターネット ウェブ制作
✍キーワード:HTML password タグ
○ 状態 :終了
└ 回答数 : 4/5件

▽最新の回答へ

1 ● km1967
●0ポイント

できません

◎質問者からの返答

この質問・回答へのコメントにana_logさんが書いているのをご覧になってから、回答してますよね?


2 ● e55ind
●0ポイント

不可能です。

◎質問者からの返答

この質問・回答へのコメントにana_logさんが書いているのをご覧になってから、回答してますよね?


3 ● ardarim
●60ポイント ベストアンサー

標準のHTMLとCSSでは仕組み上無理です。


JavaScriptが必要になりますが、dpasswordライブラリを使ってこういう解決法もあります。

iPhone-like password fields using jQuery // DECAF° blog fur digitale kommunikation

jQueryを使ったパスワードの置き換えです。JavaScriptが無効な場合は透過的な動作(通常のパスワードの動作('*'表示))になります。

・任意のUnicode文字に置き換え可能

・時間を指定して文字を隠すことが可能(入力直後は見せる)


サンプル(マスク文字を「秘」に置き換えています)


ただし、順番に入力した場合のみ有効(最後の文字だけ。途中の文字の編集不可)、duration=0にしても一瞬入力文字が見えてしまう等の制限があります。


4 ● nekochokin
●30ポイント

type="password" というのが絶対条件なのであれば、できません。

が、type="text"でも良いのであれば、無理やり再現することは可能です。

以下にサンプルプログラムを書きます。

<html lang="ja">

<head>

<script type="text/javascript"><!ーー</p> <p>function passinput(){</p> <p>document.aaa.pass.value = document.aaa.pass.value + document.aaa._pass.value.substr(document.aaa._pass.value.length-1,document.aaa._pass.value.length);</p> <p>document.aaa._pass.value = "";</p> <p>var x = document.aaa.pass.value.length;</p> <p>while(x){</p> <p>document.aaa._pass.value = document.aaa._pass.value + "*";</p> <p>x--;</p> <p>}</p> <p>}</p> <p>//ーー></script>

</head>

<body>

<form name="aaa" onsubmit="return false">

<input type="text" name="_pass" onkeyup="passinput()" /><input type="hidden" name="pass" />

</form>

</body>

</html>

※ 上記のプログラムの <!ーー と ーー> は半角に置き換えてください。

時間の関係で、雰囲気が分かる程度の雑なプログラムになりましたが、

一応半角英数字をゆっくり入力すると伏字「*」になります。

document.aaa._pass.value = document.aaa._pass.value + "*";の部分の"*"を"■"などに変更すると、伏字を変更することができます。

かなり荒業ですが、上記のプログラムを修正すればできるかもしれませんw

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ