5

Railsアプリケーションを開発していますが、ラジオボタンがクリックされたときに特定のフィールドを表示/非表示にする必要があります。

私はJavaScriptを使用していますが、動作させることができないようです。

それを解決するためのヒントはありますか?

ラジオボタンコード

<%= radio_button 'relat', 'atu', 'yes' %>   ATU
<%= radio_button 'relat', 'atu', 'no' %>    No ATU

最初のボタンがチェックされたときに表示されるフィールド

<div id="esatu" style="display:none">
<p>
    <label for="relat_tipus_atu">
    Tipus ATU
    </label>
    <%= select_tag :tipus_id, "<option value=''></option>".html_safe + options_from_collection_for_select(@tipus, :id, :codi) %>
</p>

4

1 に答える 1

10

まず、ラジオボタンにいくつかのクラス名を付けて、JavaScriptでより簡単に使用できるようにします。

<%= radio_button 'relat', 'atu', 'yes', {:class => "relat__atu relat__atu_yes"} %>   ATU
<%= radio_button 'relat', 'atu', 'no', {:class => "relat__atu relat__atu_no"} %>    No ATU

次に、変更イベントにイベントハンドラーをアタッチします。ラジオボタンが「はい」ボタンであるかどうかに応じて、他の要素の表示を切り替えます。

$(".relat__atu").on("change", function(){
  $("#esatu").toggle($(this).hasClass("relat__atu_yes"));
});
于 2012-09-17T13:14:07.287 に答える