質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

0回答

2035閲覧

【Rails】cocoon jQueryが効かない

ikutyan46

総合スコア18

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

0クリップ

投稿2020/06/13 23:24

【実現したいこと】
1.cocoonを利用して、1対多モデルのフォームのボタンを追加させたい
2.cocoonのやり方に従い、<%= render 'output_fields', f: output %>と記述して別ファイルでrender部分を記述すると確かに動くが、1つのファイルでまとめて記述するとjQueryが効かなくなるため、原因を知って解決したい

【起こっていること】
「追加」ボタンの実装ですが、ファイルを分けると反応しますが、1つのファイルに同じ内容を記述する場合だと何も反応しない

(実現したいイメージ)
イメージ説明

【参考記事】
Cocoonで親子(孫)関係で、動的にフォームを追加削除する

【環境】
Ruby:2/6.5
Rails:5.2.4.3
gem cocoon使用

【コード】

_form.html.slim

slim

1 .form-group 2 h3 今日できるようになったこと・成果 3 #outputs 4 = f.fields_for :outputs do |output| 5 .nested-fields 6 .form-group.form-group-flex 7 = output.text_area :output_name 8 #links 9 = link_to_remove_association "削除",f, class: 'btn btn-danger' 10 = link_to_add_association '追加',f, :outputs, class: 'btn btn-primary'

_output_fields.html.slim

.nested-fields .form-group.form-group-flex = f.text_area :output_name #links = link_to_remove_association "削除", f, class: 'btn btn-danger'

applicaiton.js

JavaScript

1//= require jquery3 2//= require popper 3//= require bootstrap-sprockets 4//= require activestorage 5//= require moment 6//= require moment/ja.js 7//= require jquery 8//= require Chart.min 9//= require rails-ujs 10//= require cocoon 11//= require_tree .

new.html.slim

slim

1h1 新規登録 2= render 'form', model: @record 3= link_to '一覧に戻る', root_path, class: 'btn btn-primary'

records_controller.rb

Ruby

1class RecordsController < ApplicationController 2 3 def index 4 @records = current_user.records.includes(:practices).page(params[:page]).per(8) 5 end 6 7 8 def new 9 @record = Record.new 10 output = @record.outputs.build 11 practice = @record.practices.build 12 task = @record.tasks.build 13 end 14 15 def record_params 16 params.require(:record).permit(:record_id, :training_date, :learning_point, outputs_attributes:[:output_name, :id], practices_attributes:[:practice_item, :practice_time, :id], tasks_attributes:[:task_name, :id]).merge(user_id: current_user.id) 17 end 18end

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問