CakePHPのHTMLヘルパーの出力タグを変更して、ラジオボタンにラベルをつける

3744 回閲覧 このエントリーをはてなブックマークする この記事のブックマークユーザー 永続的リンク2008/03/12 14:27:29 カテゴリ: CakePHP
スポンサード リンク
label

CakePHPのHTMLヘルパーを使ってラジオボタンを生成するときのメモ。

<?php
$data =  array(
    '1' => 'あいうえお',
    '2' => 'かきくけこ',
    '3' => 'さしすせそ'
);
echo $html->radio("Test/kana",$data,"
",array("value"=>"1")); ?>

これを出力すると、

<input type="radio" name="data[Test][kana]" id="kana_1" value="1" checked="checked"  />あいうえお<br/>
<input type="radio" name="data[Test][kana]" id="kana_2" value="2"  />かきくけこ<br/>
<input type="radio" name="data[Test][kana]" id="kana_3" value="3"  />さしすせそ


これにラベルを貼りたい。


CakePHP HTML ヘルパーで出力されるタグを変更する」で紹介されています。

app/config 内に変更したいタグを定義してヘルパーの親クラス(AppHelper) で定義したタグを読み込むという方法です。
CakePHP1.1 と 1.2 で少し方法が違います。

CakePHP1.1の場合

app/configにtags.ini.phpというファイルを作成しここにタグを定義すると自動的に反映される。
※ラジオボタンにラベルをつける場合は以下

radio = <label><input type="radio" name="data[%s][%s]" id="%s" %s />%s</label>


====== 追記 ==========
このままだとIEでラベルが効かない

radio = <input type="radio" name="data[%s][%s]" id="%s" %s /><label for="%s">%s</label&gt

にして、ヘルパーもいじる必要が出てくるので、
/cake/libs/view/helpers/html.phpをコピーし、/app/views/helpers/html.phpにおく。そして以下を変更

//修正前
$out[] = sprintf($this->tags['radio'], $this->model, $this->field, $individualTagName, $parsedOptions, $optTitle);
↓
//修正後
$out[] = sprintf($this->tags['radio'], $this->model, $this->field, $individualTagName, $parsedOptions, $individualTagName, $optTitle);

ってあつさんのとこを参考にした。
====== ========= ========== ======== ======


CakePHP1.2の場合

CakePHP HTML ヘルパーで出力されるタグを変更する」を参照下さい。
※CakePHP 1.2 ではラジオボタンにラベルがついた状態で出力されるとのこと。


上記の方法で出力させると、以下のようにラベル付きで表示されるようになりました。

<label><input type="radio" name="data[Test][kana]" id="kana_1" value="1" checked="checked"  />あいうえお</label><br/>
<label><input type="radio" name="data[Test][kana]" id="kana_2" value="2"  />かきくけこ</label><br/>
<label><input type="radio" name="data[Test][kana]" id="kana_3" value="3"  />さしすせそ</label>

参考サイト

 →ツイッターのフォローはこちら
スポンサード リンク
         

関連記事

↑ページ上部へ

アクセスカウンター

今日 : 11 昨日 : 13

ブログ内容

主にウェブ関係のことを書いてます。たまにブレイクダンスとか他のことも書いています。

プロフィール

MICK

MICKです。

1983年1月24日生まれ。ウェブの世界にいるのは、偶然のようで必然なのかも。

好きなこと :
 挑戦すること。物事に没頭すること。勉強すること。
嫌いなこと :
 自慢話を聞くこと。人の悪口を言うこと。

運営サイト

      

カテゴリ一覧

サイト広告

オススメの書籍とか

感想

紹介

色々

最近のコメント

最新記事

注目記事

人気記事

最近の人気記事

人気の記事

関連サイト

運営サイト

色々

最近のトラックバック