2013-10-28 32 views
0

我正在学习jquery & ajax via railscasts 136 revise jquery & ajax。我花了4个多小时仍然无法完成第一步工作。jQuery未加载,jquery-rails如何工作

问题是我添加remote: true作为数据属性和new.js.erbapp/view/task。但是,它从不触发ajax调用。它只是重定向到新页面。

既然它真的很简单。我创建公共回购。 here

然后,经过几个小时的研究,我发现jQuery没有被加载。因为,我添加了

debugger 
if (jQuery) { 
    alert('Jquery is loaded') 
} else { 
    alert ('Jquery is not loaded') 
} 

您还可以在github回购中找到。我也看了this topic,并且还试图切换ujsjquery

//= require jquery 
//= require jquery_ujs 
//= require_tree . 

cssjs

<%= stylesheet_link_tag "application", :media => "all" %> 
<%= javascript_include_tag "application" %> 

到:

<%= javascript_include_tag "application" %> 
<%= stylesheet_link_tag "application", :media => "all" %> 

没有什么作品。

  1. 我想知道,jquery-rails如何工作。为什么没有错误,它只是无法加载jQuery?

  2. 我试图升级rails 3.2.8到3.2.15,结果工作。仍然想知道原因。

有线问题,想搞清楚原因。谢谢

+0

您在3.2.8的回购工作正常。我没有改变一件事,只是运行捆绑安装,你正在加载的jquery通知正在出现,并且'new'正在按照js而不是html进行处理,并且表单正在被添加到页面而没有重新加载。我的猜测是,当你更新你的导轨版本时,你修复了一些在你的捆绑宝石中不合适的东西。由于干净的捆绑工作,这是我能想象的。 – trh

+0

关闭主题:您应该升级到3.2.15 3.2.13之前存在严重的安全问题,只需更新Gemfile中的rails版本并运行'bundle update rails' – house9

+0

谢谢@trh请将您的解释转到答案,我会接受。因为,那正是问题所在。我使用rvm来维护宝石套装,这可能是问题所在。而有线部分是没有适当的错误,如果它找不到'jquery-rails'宝石 – ken

回答

0

每个评论:问题似乎与捆绑本身。

3.2.8 Github回购工作正常。

克隆和运行捆绑软件安装,您正在加载的jquery通知正在出现,并且新处理为js而不是预期的html,并且表单正在被添加到页面而无需重新加载。

同样根据@ house9的评论,请记得更新所有rails 3.2应用程序至少3.2.14以解决主要的安全漏洞。