了解しました。私はJS/JQuery /Coffeescriptnoobです。これはおそらく誰かにとって簡単なポイントです。
RBateのネストされたフォームモデルのレールキャストの実装に成功したので、これをより単純なモデルで再現しようとしています。支部には多くの郡があります。
chapters.js.coffee
次のコードのファイルがあります。
jQuery ->
$('form').on 'click', '.remove_fields', (event) ->
$(this).prev('#destroy').val('1')
$(this).closest('fieldset').hide()
event.preventDefault()
このコードは、他のモデルでも問題なく機能します。しかし、ここではありません。
_chapters_form.html.erb:
<div class="row span12">
<%= form_for(@chapter) do |f| %>
<%= render 'shared/error_messages', object: f.object %>
<div class="span2"><strong>Chapter name:</strong></div>
<div class="span6"><%= f.text_field :name %></div>
<div class="span2"><strong>Chapter Number:</strong></div>
<%= f.number_field :chapter_num, class: "span2" %>
</div>
<div class="row span12">
<div class="span12">
<%= f.fields_for :counties do |builder| %>
<%= render 'county_fields', f: builder %>
<% end %>
</div>
<% if f.object.new_record? then link = 'Add the Chapter' else link = 'Update Chapter' end %>
<%= f.submit "#{link}", class: "btn btn-large btn-primary" %>
<%= link_to "Cancel", chapters_path, class: "btn btn-large btn-primary" %>
<% end %>
</div>
と:
_county_fields.html.erb:
<fieldset>
<div class="well span12">
<div class="row span12">
<div class="span3">County Number: <br /><i>(6-digit FIPS code)</i></div>
<div class="span2"><%= f.number_field :county_num %></div>
<div class="span2">County Name:</div>
<div class="span5"><%= f.text_field :name %></div>
</div>
<div class="row span12"><hr></div>
<div class="row span12">
<div class="span6">Move to new Chapter:</div>
<div class="span6"><%= select(:county, :chapter_id, Chapter.all.collect {|c| [c.name, c.id]}) %></div>
</div>
<div class="row span12">
<div class="pull-right">
<%= f.hidden_field :_destroy, id: "destroy" %>
<%= link_to "remove county", "#", class: "remove_fields" %>
</div>
</div>
</div>
</fieldset>
JSにエラーはありません。繰り返しになりますが、noobは話しますが、JSが呼び出されているようには見えません。クリックすると、URIにが<%= link_to "remove county", "#", class: "remove_fields" %>
追加されます。#
私は何が間違っているのですか?
要求に応じて、どちらも機能しないフィドルのHTML 。