jQuery:ラジオ選択時にセレクトボックスを制御する

HTMLでフォームを作成していると入力した値によって入力項目の切り替えなどをしたい場合があります。
jQueryでラジオボタン選択時にセレクトボックスなどのフォームを有効・無効にする方法を記載します。


■ 使用例

【jQuery】

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript">
$(function() {
    // 初期状態のセレクトボックスをdisabledに設定する
    $("select#specList").attr("disabled", "disabled");

    // 「全体」をクリックされた場合
    $("#all").click(function(){
        // セレクトボックスをdisabledに設定する
        $('select#specList').attr("disabled", "disabled");
    });    

    // 「指定」をクリックされた場合
    $("#spec").click(function(){
        // セレクトボックスのdisabledを外す
        $('select#specList').removeAttr("disabled");
    });    
});
</script>

【HTML】

<label for="all"><input type="radio" name="radio" id="all">全体</label>
<label for="spec"><input type="radio" name="radio" id="spec">指定</label>

<select id="specList">
    <option value="100">ID:100</option>
    <option value="200">ID:200</option>
    <option value="300">ID:300</option>
</select>

■ サンプル

「指定」を選択しているときのみ、セレクトボックスが選択可能になっています。



ID:100ID:200ID:300


HTML:検索エンジンロボットの巡回を拒否する

WEBサイトを作成していると管理画面など検索エンジンにクロールされないようにしたいページなどが存在します。
今回はhtmlのmetaタグで設定する方法とrobots.txtを使って制御する方法を記載します。


検索ロボットクローラー

サーチエンジンの検索データベースを作成するために、世界中のWEBサイトの情報を自動的に回収するプログラムです。
GoogleやYahoo!などで検索した際に検索ロボットが収集した情報を出力しています。
クローラーがWEBサイトをクロール(巡回)することによって、より良い情報を検索結果に出力してくれます。


■ metaタグで設定する方法

HTMLのmetaタグに記述し、検索ロボットを制御します。
metaタグは設定したいページのheadタグ内に記述します。
NOINDEXなどの指定は大文字で設定します。

NOINDEX:検索エンジンにインデックスさせず、検索結果に表示させない。
NOFOLLOW:ページ内に存在するリンク先を巡回させない。

指定のページを検索エンジンに登録させない場合

<meta name="ROBOTS" content="NOINDEX">

ページ内のリンク先の巡回させない場合

<meta name="ROBOTS" content="NOFOLLOW">

両方を同時に設定する場合

<meta name="ROBOTS" content="NOINDEX,NOFOLLOW">

■ robots.txtで設定する方法

robots.txtを設置した場合、検索ロボットはrobots.txtにアクセスします。
robots.txtで巡回を拒否するように設定している場合はHTMLアクセスせずに帰っていきます。

【使用例】

User-Agent: *
Disallow: /

検索ロボットにWEBサイト全体を巡回させる場合

User-agent: *
Disallow:

※robots.txtを作成しない場合は、上記と同じ設定になります。

検索ロボットにWEBサイト全体を巡回させない場合

User-agent: *
Disallow: /

検索ロボットに特定のページへアクセスさせないようにする場合

User-agent: *
Disallow: /hoge/
Disallow: /hoge.html

検索ロボットを指定する場合(googleの検索ロボットを拒否)

User-agent: Googlebot
Disallow: /