デザイナーにも分かりやすいjQuery入門講座|jQueryの使い方

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

:texttype属性がtextの要素を選択

構文

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

機能

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

解説

type属性がtextの要素を選択します

サンプル(text/01.html)を開いてbody内の構成を確認してください。フォーム関連の要素が一通り記述されています。jQueryは以下の様に記述され、ブラウザ内(document)をクリックするとtype属性がtextの要素を選択します。選択した要素はcssメソッドを利用して赤枠を付けます。

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

textarea要素は選択されないことに注意しましょう。

推奨される書き方

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

$(document).click(function(){
	$("input[type='text']").css("border","3px solid red");
});

結果としてtext/01.htmlとまったく同じになり、ブラウザ内をクリックするとテキスト入力欄に赤枠が付きます。もしtextarea要素も選択したい場合は、サンプル(text/02b.html)のように複数のセレクタ(or)を利用してセレクタにtextareaを追加します。

$(document).click(function(){
	$("textarea, input[type='text']").css("border","3px solid red");
});