-1

生徒の性別を選択するために使用する 2 つのラジオ ボタンを表示したいと考えています。CGI Perl モジュールを使用して変数を設定し、これらのラジオ ボタンの HTML コードを生成しようとすると、ボタンではなく、ラジオ選択テキストのみが表示されます。

$cInput_form .= $q->div({-class => 'control-group'},
                    $q->label({-class => 'control-label', -for => 'gender'}, "Gender:"), 
                    $q->div({class => 'controls'}, 
                    $q->span({class => 'span12'},
                    $q->label({-class => 'blue'},
                    $q->radio_group({-id => 'gender',name => 'gender', -values => ['M','F'], -labels => \%labels, -default => $cGender, 'true'}), $q->span({-class => 'lbl'})))));

Web ブラウザーで「要素の検査」ツールを使用すると、次のような html が表示されます。

<div class="control-group">
  <label class="control-label" for="gender">Gender:</label>
  <div class="controls">
    <span class="span12">
      <label class="blue">
        <label>
          <input type="radio" name="gender" value="M" checked="checked" id="gender" true="">
          Male
        </label>
        <label>
          <input type="radio" name="gender" value="F" id="gender" true="">
          Female
        </label>
        <span class="lbl"></span>
      </label>
    </span>
  </div>
</div>

問題は<span class = 'lbl'>適切な場所にないことだと思いますが、他にどこにあるべきかわかりません。私を助けてください。

4

1 に答える 1

0

問題は、radio_group を不要なラベル グループ内にグループ化している可能性があると思います。このページは、性別選択ラジオ ボタン グループを作成する状況に似たコードを示しています。

コードを次のように変更してみてください(もう少し読みやすくするために再フォーマットされています):

$cInput_form .= $q->div({-class => 'control-group'},
                $q->label({-class => 'control-label', 
                           -for   => 'gender'}, Gender:"), 
                $q->radio_group({-id => 'gender',
                                 name => 'gender', 
                                 -values => ['M','F'], 
                                 -labels => \%labels, 
                                 -default => $cGender, 
                                 'true'}),
                        );

これはテストされていませんが、要点を理解していると思います。1 つのセクションを別のセクション内にグループ化するときは注意してください。それが役に立てば幸い!

于 2013-08-19T23:19:19.127 に答える