私はこの見栄えの良い宝石をインストールし、それを機能させるために過去 2 時間を費やしました。
親フォーム内にネストされたフィールドを表示し、レコードを作成/更新することができました。
ただし、JS リンクの追加/削除は機能しません。これは、コンソールでこのエラーが発生しているためです。
Uncaught TypeError: Object [object Object] has no method 'nestedFields' neste_attributes_forms.js:2
(anonymous function) neste_attributes_forms. js:2
fire jquery.js:1018
self.fireWith jquery.js:1128
jQuery.extend.ready jquery.js:417
DOMContentLoaded
私はJSでかなり新しいです。だから、私は問題が何であるか分かりません。
gem ページにあるのと同じコードを試してみました。
$(document).ready(function(e) {
$('FORM').nestedFields();
});
また、divのIDで呼び出してみました。しかし、役に立たない。ページのソースを確認したところ、このコードが読み込まれました。
私が何を見逃しているか分かりますか?どんな助けでも大歓迎です!!!
フォームの一部: haml
= form_for(@event) do |f|
....somefields....
#nested_layers
.items
= f.nested_fields_for :details do |f|
%fieldset.item
= f.label :town
= f.text_field :town
%a.remove{:href => "#"} remove
= f.hidden_field :id
= f.hidden_field :_destroy
%a.add{:href => "#"} add phone
..someOtherFields....
アプリケーション.js
//= require jquery
//= require jquery_ujs
//= require jquery-ui-1.9.2.custom.min
//= require jquery.nested-fields
....
修正済み: Application.js には、削除してはならない非常に巧妙な文が含まれています。したがって、すべての //= require... が別のすぐ下にあることを確認してください。そうしないと、メソッドを見逃すことになります!!