もっと便利に!jQueryでラクラクサイト制作(実践サンプル付き)
第9回 今すぐできる!ユーザビリティを向上させるフォーム操作実践(1)
今回よりフォーム関連の実践
前回はタブパネルをプラグインとして利用することについての説明をしました。プラグインとして作ることで,様々なサイトで使いたい部分で使えるようにできるという点でも,とても便利です。今後もプラグインとして利用できるような作り方の説明も入れていきますので,みなさんもぜひ挑戦してみてください。
さて,今回より数回にかけて,フォーム(Form)関連の実践例についてご紹介していきます。フォームでは,ユーザーが使いやすいよう(入力しやすいように)に工夫することで様々な点において,利便性を向上させることができます。
今回はフォームの入力部分に入力例などを入れておき,フォーカスしたときにその入力例を消す仕組みを作ってみることにします。
入力例を入れておきフォーカス時に消す
フォームの入力部分で,入力例を入れておくことで,その部分にどのような入力をしたらいいのか明示しておくことができます。このようにしておくことで,ユーザーが入力の時に戸惑わなくて済むようになります。
入力例を最初からHTMLに入れておくこともできるのですが,それではフォーカスしても最初に入れておいた文字は消えず,わざわざ入力する人が消す手間が増えてしまいます。ユーザビリティーとしては高めることができても,ユーザーの手間が増えるのは良くありません。
HTML
<p><label for="sample01">名前:</label><input id="sample01" type="text" value="技評太郎" /></p>
サンプルでは入力例として「技評太郎」という値をvalueに入れただけのものです。このままでは,先にも書いたように,例ではなく,実際のユーザーの名前を入力する際に,わざわざその文字を消さなくてはなりません。
そこで,入力欄にフォーカスしたときに,あらかじめ入っていた文字を消すということを,JavaScript側で行うようにします。
focusでvalueの値を削除
$(function(){
$('input').focus(function(){
$(this).val('');
});
});
上記の例では,あらかじめHTML側のvalueに入力例を入れておき,フォーカスしたときに,それを消すというだけのシンプルな例です。
しかしこれだけでは,仮にフォーカスが入っても,入力しないままでフォーカスがはずれた時に,何も値が入っていない状態になってしまいます。例えばその欄だけ入力を後回しにしたときになど,入力が何もなかった場合に,元の入力例を表示するようにしておくのが親切です。
focus
focusはinputやtextareaなどの要素に,マウスやタブキーでフォーカスした際に,イベントを実行させるものです。簡単な例を見てみましょう。
focusでアラートを表示
$(function(){
$('input').focus(function(){
alert('フォーカスしました');
});
});
inputにフォーカスすると「フォーカスしました」のアラートを表示する簡単なサンプルです。focus時に何かする際はこれを利用しましょう。
もっと便利に!jQueryでラクラクサイト制作(実践サンプル付き)
- 第19回 jQueryでAJAX入門:JSONを使いサイトにTwitterを表示
- 第18回 jQueryでAJAX入門:RSSをAJAXで取得してリストに表示する
- 第17回 「その場編集」を実装する
- 第16回 jQueryで楽々実装できるツールチッププラグインを作ってみよう
- 第15回 チェックする項目の選択・未選択を画像でわかりやすくする
- 第14回 入力した/入力するパスワードを見えるようにする
- 第13回 今すぐできる!ユーザビリティを向上させるフォーム操作実践(5)デザインされたチェックボックスを実装する
- 第12回 jQueryでセレクトボックスをデザインする
- 第11回 今すぐできる!ユーザビリティを向上させるフォーム操作実践(3)
- 第10回 今すぐできる!ユーザビリティを向上させるフォーム操作実践(2):プラグインを使わずにバリデーションを実装
- 2010年3月第1週号 1位は,ECサイトデザインの情報源いろいろ,気になるネタは,日経を丸ごと読める「Web刊」,単体月額4000円で
- 2009年12月第3週号 1位は,CSS3を使うことで,より素晴らしく,より短時間にデザインされた実践的テクニック,気になるネタは,バイドゥ,日本語入力システム「BaiduType」公開
- 2009年9月第3週号 1位は,ブログのトップページで記事をどう見せるか/気になるネタは,Google,記事の“高速閲覧”を可能にする「Fast Flip」立ち上げ
- 第12回 jQueryライブラリ(2530行目~2833行目)
- 第8回 jQueryライブラリ(1795行目~1961行目)




