初心者向けのjQuery入門講座|デザイナー向けのJavaScriptライブラリ

このエントリーをはてなブックマークに追加
索引
Core:コアとなる仕組み
Selectors:セレクタ
Attributes:属性
Traversing:対象の変更
Manipulation:操作
CSS:スタイルシート
Events:イベント
Effects:演出効果
Ajax:xml等との連携
Utilities:ユーティリティ
Data:データ
Miscellaneous:諸々
Deferred:処理管理
Callbacks:コールバック
Internals:内部処理

:radioラジオボタンを選択

構文

ラジオボタン(type属性がradioの要素)を選択
$(":radio")ver1.0〜
※:(コロン)を忘れないように注意しましょう

機能

:(コロン)に続けてradioを設定するとラジオボタン(type属性がradioの要素)を選択します。
新しいブラウザでは[属性名='値']を利用してinput[type='radio']としたほうが高速なため、現在では非推奨のセレクタとなっています(解説の最後に推奨される書き方を紹介しています)。

解説

ラジオボタンを選択します

サンプル(radio/01.html)を開いてbody内の構成を確認してください。フォーム関連の要素が一通り記述されています。radio要素自身にはcssでボーダーを設定することができないので、ボーダーを付けるため以下の様にradio要素をspanタグで囲んでいます。

<span><input type="radio" /></span>

jQueryは以下の様に記述され、ブラウザ内(document)をクリックするとラジオボタンを選択してからparentメソッドを利用して親要素のspanを選択します。そして選択したspan要素にcssメソッドを利用して赤枠を付けます。

$(document).click(function(){
	$(":radio").parent().css("border","3px solid red");
});

結果として、ブラウザ内をクリックするとラジオボタン(の外側にあるspan要素)に赤枠が付きます。

チェックを入れる

サンプル(radio/02.html)を開いてbody内の構成を確認してください。このサンプルではボーダーは付けないのでラジオボタンをspan要素で囲んでいません。jQueryは以下の様に記述され、ブラウザ内(document)をクリックするとラジオボタンにpropメソッドを利用してチェックを入れます。

$(document).click(function(){
	$(":radio").prop("checked",true);
});

結果として、ブラウザ内をクリックするとラジオボタンにチェックが入ります。

推奨される書き方

新しいブラウザでは[属性名='値']を利用してinput[type='radio']としたほうが高速です。
サンプル(radio/03.html)を開いてbody内の構成がradio/02.htmlと同じ事を確認してください。jQueryもほとんど同じで、セレクタが以下の様に変更されているだけです。

$(document).click(function(){
	$("input[type='radio']").prop("checked",true);
});

結果としてradio/02.htmlと同じように、ブラウザ内をクリックするとラジオボタンにチェックが入ります。