2010-12-06 10 views
3
私はこのコードでフォーム要素を作成

:ここZendのフレームワーク:Zendのフォームのデコレータ - 削除乗算<label>

$input_new = $this->createElement('radio', 'Stars', array(
    'label' => 'Stars', 
    'Options' => array('class'=>'star {split:2}'), 
    'multiOptions'=>array(
     '1'=> '', 
     '2'=> '', 
     '3'=> '', 
     '4'=> '', 
     '5'=> '', 
     '6'=> '' 
); 

私が得たもの:

<label for="Stars" class="optional">Stars</label>  
<label for="Stars-1"><input type="radio" name="Stars" id="Stars-1" value="1" class="star {split:2} in_line"></label><br /> 
<label for="Stars-2"><input type="radio" name="Stars" id="Stars-2" value="2" class="star {split:2} in_line"></label><br /> 
<label for="Stars-3"><input type="radio" name="Stars" id="Stars-3" value="3" class="star {split:2} in_line"></label><br /> 
<label for="Stars-4"><input type="radio" name="Stars" id="Stars-4" value="4" class="star {split:2} in_line"></label><br /> 
<label for="Stars-5"><input type="radio" name="Stars" id="Stars-5" value="5" class="star {split:2} in_line"></label><br /> 
<label for="Stars-6"><input type="radio" name="Stars" id="Stars-6" value="6" class="star {split:2} in_line"></label> 

が、私は、各入力と
タグで削除したいですメインレーベル(スターズ)はまだ残っています。どのように私はこれを行うことができますか?

答えて

2

あなたのラジオボタンは表示グループ(フィールドセット)に行くことができるので、ボタンのすべてのラベルを削除してグループラベルを使用することもできます。そうでない場合は、おそらく外部デコレータビューを作成する必要があります。私はラベルを取り除くためのよりクリーンな方法を考えることができません。

[EDIT]

ここで例を示します。形で

、このようなデコレータを設定:

$input_new->setDecorators(array(array('ViewScript', array('viewScript' => 'starsview.phtml')))); 
starsview.phtml

次にファイルを作成します。これらのリンクは、ビュースクリプトのコンテンツを作成する方法を理解するために有用であることを証明しなければならない:

これが役に立ちます。

+0

ここにコード例を掲載できますか? –

+0

それは私を助けません:(終わりに私は単純にCSSのルールですべてを飾る.Haventより多くの時間;( –

+0

も、それは有効なオプションです:D – mingos

関連する問題