ここでは HTML::FormHanlder を使用しています。ラジオボタンをレンダリングして(このメソッドを使用して)別の出力を得ようとしています。フィールド宣言は次のようになります。
has_field 'xxx' => ( type => 'Select', widget => 'RadioGroup', build_label_method => \&build_label );
sub build_label {
my $self = shift;
return $self->name;
}
問題は、<label>
ヘッダーをグループ化する要素にのみあることです。
<label for="xxx">Lorem ipsum</label>
、
だからそれはそれを変更します。
ラジオボタンは変更されません<input type="radio" name="xxx" id="xxx" value="2"/>
I'm not changed
当然のことながら、自動的にレンダリングされた「私は変更されていません」(この場合)の後に続くテキストを変更する方法を考えています<input/>
より明確にするための例を次に示します。
<label for="0.xxx">This is the only part that gets changed with sub build_label</label>
<label class="radio" for="0.xxx.0">
<input type="radio" name="0.xxx" id="0.xxx.0" value="2"/>
How to change rendering method of this part?
</label>
<label class="radio" for="0.xxx.1">
<input type="radio" name="0.xxx" id="0.xxx.1" value="1"/>
And this one?
</label>