勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

フォームのpasswordとtextをjQueryで切り替えて

   2014/07/03  jQuery

パスワード入力の際、大抵「●●●」みたいな形で隠されるが、

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()みたいな感じなんでしょうか。

 - jQuery

  関連記事

Dropzone.jsを使って画像をドラッグ&ドロップでアップロードする方法

画像を複数枚ドラッグ&ドロップでアップロードしたかった。だいぶ前にDro ...

videoタグで表示させた動画をjQuery&CSSでフローティングビデオ対応させる方法

Web上の動画をFloatingVideo対応したいという要望を受けた。ページ上 ...

jQueryで後から追加された要素にイベントを設定

jQueryで.html()等を使って追加した要素に対してイベントを設定したかっ ...

jQueryで画像を遅延ロードする(jquery.lazyload.js)

画像を遅延ロードさせたい時にはlazyloadが便利。 ■ダウンロード http ...

画像をドラッグ&ドロップでアップロード

■2015/04/15追記 以下記事の方が新しくて詳しい。 http://tai ...