jQuery Multi-checkbox - テキストフィールドを複数選択チェックボックスに変えるjQueryプラグイン
jQuery Multi-checkboxとは
jQuery Multi-checkboxとは、普通の input type="text" を複数選択チェックボックスに変えてくれる jQuery プラグインです。選択されたチェックボックスの値が、元のテキストフィールドにカンマ区切りで入力されます。
利用シーンはあまりないかもしれませんが、チェックボックスをいくつも作るのが面倒なとき(笑)や、Movable Type のカスタムフィールドなど、CMS の管理画面でも使えるかも知れません。
サンプル
ダウンロード
- Downloads - jquery-multicheckbox - Google Code
(こちらのページへのリンクをずっと張り忘れていました orz)
設置方法
ファイルのアップロード
ダウンロードしたファイルを解凍します。解凍したフォルダの中にある「jQueryMultiCheckbox.js」をサーバーにアップロードします。アップロードする場所はどこでも構いません。
ファイルの読み込み
jQuery と jqueryMultiCheckbox.js を読み込みます。以下のように jQuery を読み込んだ後に、先ほどアップロードした「jQueryMultiCheckbox.js」を読み込んでください(src属性のパスはアップロードしたとおりに変更してください)。
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript" src="/js/jQueryMultiCheckbox.js"></script>
使い方
使い方は次の3パターンがあります。
- title 属性で値を設定する(一番簡単な使い方)
- label オプションで値を設定する1(title 属性が設定しにくい場合)
- label オプションで値を設定する2(ラベルと保存される値を変えたい場合)
title 属性で値を設定する(一番簡単な使い方)
input 要素(type="text")を用意し、その要素の title 属性に、チェックボックスにしたい値をカンマ区切りで設定します。
サンプルでは、□バッジョ、□ジーコ、□クライフ、□ロマーリオという4つのチェックボックスになっています。この場合の input 要素は次のようになります。クラス名は変更しても構いません。
<input class="multicheck" type="text" title="バッジョ,ジーコ,クライフ,ロマーリオ" value="" />
後は、チェックボックスにしたいセレクタに .multicheckbox() を適用すればOKです。
jQuery(function($){
$('.multicheck').multicheckbox();
});
label オプションで値を設定する1
(title 属性が設定しにくい場合)
CMS などの管理画面では、title 属性を設定しにくいことが考えられます。そのような場合は、この label オプションで、チェックボックスにしたい値をカンマ区切りで設定すればOKです。
<input class="multicheck3" type="text" value="" />
jQuery(function($){
$('.multicheck3').multicheckbox({label:'ブラジル,ポルトガル,スペイン,オランダ'});
});
label オプションで値を設定する2
(ラベルと保存される値を変えたい場合)
上記2つの方法は、チェックボックスのラベルと input:text に保存される値が同じになる仕様です。しかし、「ラベル名は日本語で、保存される値は英語がいい」ということもあるかと思います。
そのような場合は、label オプションで {"hoge":"ホゲ"} といった形式で値を指定することで、ラベルと値を変更することができます。
{"英語(保存される値)":"日本語(表示されるラベル名)"}
jQuery(function($){
$('.multicheck5').multicheckbox({show:'show',label:{
"Brazil":"ブラジル",
"Portugal":"ポルトガル",
"Spain":"スペイン",
"Holland":"オランダ"
}
});
});
その他のオプション設定
show: string
本番前に、テキストフィールドにどのように値が保存されるか確認したいときは、オプションに「{show: 'show'}」を設定します。すると、テキストフィールドが表示されますので、当プラグインの動作や保存される値を確認することができます。
jQuery(function($){
$('.multicheck2').multicheckbox({show:'show'});
});
チェンジログ
- 【2010-10-16】
- これ移行のチェンジログは、Downloads - jquery-multicheckbox - Project Hosting on Google Codeのコメント欄をご覧ください。
- 【2010-08-27】
- label オプションにオブジェクトを指定して、ラベル名と保存される値を変更できるようにしました。
- 【2010-06-23】
- label オプションを追加しました。
jQuery Multi-checkboxに関するブログ記事
- jQuery Multi-checkbox 0.03 アップデート - 「ラベル名は日本語、保存される値は英語」を指定可能に
- jQuery Multi-checkbox アップデート - labelオプションでチェックボックス項目を指定可能
- 普通のinput:textを複数選択チェックボックスに変えるjQueryプラグイン - jQuery Multi-checkbox
以上です。
トラックバック
トラックバックURL: http://www.tinybeans.net/cgi-bin/mt/mt-tb.cgi/887



コメントする