フォームのpasswordとtextをjQueryで切り替えて
2014/07/03
パスワード入力の際、大抵「●●●」みたいな形で隠されるが、
jQueryでそれを見えるようにするというもの。
パスワードはPC(ブラウザ)に保存されているから
サイトにはログインできるけど、他のところに入れない
とかいった問い合わせとかがしばしばあるので、
考えようによっては使えそう。
■参考サイト
http://www.skuare.net/test/junMasking.html
■サンプル
http://sample.taitan916.info/passmie/
■ソース
<!DOCTYPE HTML>
<html lang="ja">
<head>
<meta charset="UTF-8">
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script>
$(function(){
$('#showcharacters').click(function() {
if ($(this).attr('checked')) { //チェック状態であればパスワードを表示
$('#password').replaceWith('<input type="text" name="password" id="password" value="' + $('#password').attr('value') + '" />');
} else { //チェックがなければパスワードを隠す
$('#password').replaceWith('<input type="password" name="password" id="password" value="' + $('#password').attr('value') + '" />');
}
});
});
</script>
<title>パス見え</title>
</head>
<body>
<h1>パス見え</h1>
<form>
パスワード:<input id="password" name="password" type="password" />
</form>
<input id="showcharacters" name="showcharacters" type="checkbox" /> 確認する
</body>
</html>
■その他
見たこと無いのがreplaceWith。
使ったこと無いのがattr。
・replaceWith
http://semooh.jp/jquery/api/manipulation/replaceWith/content/
全ての要素を、指定されたHTMLやDOM Elementで置き換える。
・attr
http://semooh.jp/jquery/api/attributes/attr/name/
最初の要素が持つ指定属性の値を返す。
要素が指定属性を持っていない場合、関数はundefinedを返す。
.html()と.val()みたいな感じなんでしょうか。
関連記事
Dropzone.jsを使って画像をドラッグ&ドロップでアップロードする方法
画像を複数枚ドラッグ&ドロップでアップロードしたかった。だいぶ前にDro ...
videoタグで表示させた動画をjQuery&CSSでフローティングビデオ対応させる方法
Web上の動画をFloatingVideo対応したいという要望を受けた。ページ上 ...
jQueryで後から追加された要素にイベントを設定
jQueryで.html()等を使って追加した要素に対してイベントを設定したかっ ...
jQueryで画像を遅延ロードする(jquery.lazyload.js)
画像を遅延ロードさせたい時にはlazyloadが便利。 ■ダウンロード http ...
画像をドラッグ&ドロップでアップロード
■2015/04/15追記 以下記事の方が新しくて詳しい。 http://tai ...