Skip to content


matumoto【jQuery】ラジオボタンのイベント・値のとり方

ちょっとしたデスマーチ中につき、更新が思いっきり滞ってすみません。松本です。
今日はまただいぶスクリプト寄りな話を。
まだまだデスマーチの出口は見えないのですが、忘れないうちに書いておきたいと思います。
3連載です。

1. jQueryでのラジオボタンの取得

jQueryをいじったことがない人にはさっぱりでしょうが、
通常、jQueryはこんな風にオブジェクトをとります。

1
$('セレクタ名')

セレクタ名というのは要するに、IDとかクラスのことです。
具体的には

1
2
$('#mainArea');
$('.wrapper');

となるわけですね。

ところが、ラジオボタンに関してはちょっと違ったか書き方があります。

1
2
$('input[type="radio"]');
$('input[name="名前"]');

というとり方ができます。前者が全てのラジオボタンを取得、後者は名前で絞込みです。
(ちなみにjQuery1.3以降での書き方です。)

2. jQueryでのイベントのとり方

よって、「changerという名前のラジオボタンの選択が変わったとき」は次のようにかけます。

1
2
3
$('input[name="changer"]:radio').change(function(){
	// 処理内容
});

3. ラジオボタンの値のとり方

ところで、前段の:radioというのは「全てのラジオボタン」を指します。
選ばれているラジオボタンを取得したいときは、:checkedを使用します。

そして、特定のオブジェクトの値をとりたいときはval()という関数が使えます。

まとめると……
「changerというラジオグループの現在選ばれている値」は以下のように記述します。

1
$('input[name="changer"]:checked').val();

どうでしょうか?飛ばしすぎましたか?
実は、本当の地獄はこれからです……。
次はこの値を使って、処理を変える構文を書きたいと思います。
if文なら簡単なんだけど、覚えたいことがあって……

このエントリーを含むはてなブックマーク この記事をクリップ! コメントを見る にほんブログ村 デザインブログ Webデザインへ
 

カテゴリ : JavaScirpt, チュートリアル. タグ : , , ,

Continuing the Discussion

  1. 【JavaScript】if/else文を一行で書くには? ≪ 未分類 ≪ MOMA Labs linked to this post on 2009/10/14

    [...] 前回のエントリに続きまして、ラジオボタンの値によって画面の内容を変化させる、というスクリプトを書きたいと思います。 例によってjQueryベースで書いていきますが、今回の本題は [...]



Some HTML is OK