2016-12-06 89 views
0

我action.js.erb文件部分沒有被Ajax調用後

$("#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> 

在我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 

我正在做一個ajax調用actio然後我在action.js.erb的文件中我通過呈現相同的部分更新我的div的HTML但更新的值,但部分不呈現更新的值。請讓我知道我做錯了什麼。控制檯也沒有顯示任何錯誤

回答

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 :<%= group_ids%>}, dataType:「json」, complete:function(){}, success:function(){ console.log('comnig here') $('。column') 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

嘗試將您的dataType更改爲'script'而不是'json'。 – luckyruby

0

你爲什麼要替換現有的值<div id="performance"> </div>。嘗試通過在js中使用append方法追加新值。