0

私はRailsアプリケーションに取り組んでいます。index.html.haml では、_form.html.haml (新規および編集アクション用) もレンダリングしています。インデックス ページに「グループの追加」というリンクがあり、クリックするとフォーム内の特定のフィールドが無効になります。そのためのjqueryコードを書きました。私の問題は、リンクをクリックすると、フィールドが無効 (グレー表示) になりますが、すぐに再び有効になることです。ページを更新すると、無効なフィールドが表示されます。リンクをクリックして無効にしたときに発生するようにしたい。

jQuery コード

$(function(){
    $("#add_requirement_group").click(function() {
        $("#requirement_text_full, #requirement_requirement_type").prop("disabled", true);
    });
});

新規および編集アクションのフォーム。

= form_for ([@requirement.requirements_template, @requirement]), html: { class: "form-horizontal" } do |f|
  - if @requirement.errors.any?
    #error_explanation
      %h2= "#{pluralize(@requirement.errors.count, "error")} prohibited this requirement from being saved:"
      %ul
        - @requirement.errors.full_messages.each do |msg|
          %li= msg   %fieldset
    .control-group
      = f.hidden_field :parent_id
    .control-group
      = f.label :text_brief, class: "control-label"
      .controls
        = f.text_field(:text_brief, class: "input-block-level")
    .control-group
      = f.label :text_full, class: "control-label"
      .controls
        = f.text_area(:text_full, rows: 5, class: "input-block-level")
    .control-group
      = f.label :obligation, class: "control-label"
    .control-group
      = f.label :requirement_type, class: "control-label"
      .controls
        = f.select :requirement_type, options_for_select([:text, :numeric, :date, :enum]), include_blank: true
      .actions.pull-right
    %br/
    = f.submit 'Save', class: 'btn btn-info'
    = button_to 'Finish', '#', class: 'btn btn-info', method: :get

index.html.haml

%hr
.row-fluid
  .span4
    %fieldset.template_outline
      %strong Template Outline
      %br
      = link_to 'Add Group', new_requirements_template_requirement_path(@requirements_template), id: "add_requirement_group"
      %hr
       = render 'form'

とても単純なコードであることはわかっていますが、何らかの理由で無効化が期待どおりに機能していません。

4

1 に答える 1