rails初学者です。
現在英単語テストアプリ(四択選択型)を作っています。
テストの問題は表示できるようになって、今はjqueryで回答が正解だったら〇のエフェクト、不正解だったら✕のエフェクトを出せるように奮闘しています。
その機能の考えとしては、
1.四択の中から一つが選択される
2.選択された単語の意味をajaxでjudgeコントローラに渡す。
3.judgeコントローラで正負の判断をし、true falseの文字列を@judge変数に代入する
4.judge.js.erbファイル内の関数でvar judge = <%= @judge %>のようにする
5.test.jsファイル内でjudge.js.erb内の関数を呼び出し、judgeの値によって〇か✕のエフェクトを決める。
上の1~5を実装するために今は
a.四択の中から一つが選択される
b.選択された単語の意味をajaxでjudgeコントローラに渡す。
c.受け取った単語の意味を@test変数に代入する
d.judge.js.erbファイル内の関数でvar test = <%= @test %>のようにする
e.test.jsファイル内でjudge.js.erb内の関数を呼び出し、console.log(test)でコンソール上に選択された単語を表示する。
をしています。
a~dまでは出来たのですが、eができません。というのも、js.erbファイル内の関数をjsファイル内で呼び出せていないからです。何か良い方法はないでしょうか?
test.jsファイル内で、
$.getScript("judge.js.erb", function(){ console.log(test); });
としましたが、うまくいきませんでした
test.js
$(function() { $('.quiz_area').on('click', '.quiz_ans_area ul li', function(){ var judge = $(this).text(); $.ajax({ url: "/judge", type: "POST", data: {answer : judge} }); }); });
controller
1def judge 2 @test = params[:answer] 3 end
judge.js.erb
$(function() { var test = <%= @test %>; });
回答1件
あなたの回答
tips
プレビュー