2016-12-06 74 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方法追加新值。