【问题标题】:Ajax request is not working in ruby on railsAjax 请求在 ruby​​ on rails 中不起作用
【发布时间】:2013-11-06 08:48:37
【问题描述】:

我创建了一个测验和一个一个显示的问题,并且必须在列表中显示问题,单击它会转到列表中问题的 ID。但它不起作用,加载器不会停止

这是我的脚本

<script type="text/javascript">
  function set_active(){
  $$('.active-link').each(function(e){
    e.removeClassName('active-link');
  });
    this.addClassName('active-link')
  }

  function draw_report(){
  Element.show('loader')
  new Ajax.Request('answers/ans',
  {asynchronous:true, evalScripts:true,
  parameters:'passed_question='+this.id+'&exam_group_id=<%= @exam_group.id %>',onSuccess:function(request){Element.hide('loader')}
  })
}

  document.observe("dom:loaded", function() {
    $$('.student-link').invoke('observe','click',draw_report);
    $$('.student-link').invoke('observe','click',set_active); 
  });
</script>

在查看页面中

<div class="list_id">
  <%= "Questions" %>
</div>
  <% @slno = 0 %>
  <ul class="student_list">
    <% @questions.each do |s| %>
    <% @slno = @slno+1  %>
      <li class="student_names">
        <a href="#" id="<%=s.id%>"  class="student-link" > <%= @slno %></a>
      </li>
    <% end %>
  </ul>

但如果我点击问题 ID,它不会响应任何内容

【问题讨论】:

  • 您在浏览器控制台 (F12) 或“网络”选项卡中看到了什么?

标签: javascript jquery ruby-on-rails ruby ajax


【解决方案1】:

您使用的 Javascript 控制台是否完全没有错误?我想说添加括号应该可以解决问题:

$$('.student-link').invoke('observe','click',draw_report());
$$('.student-link').invoke('observe','click',set_active());

编辑:我看到您在原始问题中使用了 jQuery 标记。你确定你使用的是 jQuery 吗?因为上面的 javascript 代码看起来很像 Prototype。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-10
    • 2015-09-23
    • 1970-01-01
    • 1970-01-01
    • 2012-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多