2016-12-06 12 views
0
私controller_action

部分はRailsの

@groups = classroom.groups 
@questions = @quiz.questions 
@performances = Array.new 
i = 0 
group_ids.each do |g| 
    question_ids.each do |q| 
    @performances.push(Answer.where("group_id = ? AND question_id = ?",g,q).first.userans) 
    end 
end 

私action.js.erbファイル内

$("#performance").html("<%= escape_javascript(render 'performance_table',questions: @questions, groups: @groups, performances: @performances) %>") 

私の見解で

<div class="col-xs-5"> 
    <div id="performance"> 
    <%= render 'performance_table', :questions => @questions, :groups => @groups, :performances => @performances %> 
    </div> 
</div> 

にAJAX呼び出し後に更新されていません

私はactioにajaxコールを発信していますnとaction.js.erbのファイルで私は私のdivのhtmlを更新していますが、同じ部分を更新した値で更新していますが、partialは更新された値を描画していません。親切にも、私が間違っていることを教えてください。コンソールにエラーがまったく表示されない

答えて

0

.html()を呼び出す前後に警告メッセージを追加してみてください。両方のアラートがポップアップ表示されますか?もしそうなら、それはあなたのjavascriptではない可能性が最も高い問題を意味します。

+0

performance.js.erbファイルでアラートが機能していないのはなぜですか?とはいサーバーログは、JSONとしてコントローラ#メソッドを読み取っている、それは問題ですか? –

0

はいこれは問題のリクエストは "js"タイプでなければなりません。あなたはどのようにajaxコールを行っていますか? これはその表示部分です

+0

$アヤックス({ \t URL: "/ quiz_performance"、 \tタイプ: "POST"、 \tデータ:{quiz_id:<%= @ quiz.id%>、question_ids:<%= question_ids%>、group_ids : データタイプ: "json"、 完了:function(){}、 成功:function(){ console.log( 'comnig here') $( '。列'):<%= group_ids%>} .htmlの( "

なぜくそ

") \t \t \t \t \t}、 \t \t \t \t \tエラー:関数(){。 \t \t \t \t \t \t $( '列')HTML( "

なぜくそ

") \t \t \t \t \t} \t \t \t \t \t}) –

+0

このどのように私はajaxの呼び出しをしています –

+0

'json'ではなく 'script'になるようにdataTypeを変更してみてください。 – luckyruby

0

なぜ<div id="performance"> </div>の既存の値を置き換えますか? jsのappendメソッドを使用して新しい値を追加してみてください。

関連する問題