2012-05-09 46 views
0

我在我的Rails应用程序中运行js/jquery时遇到问题。 我安装了Ruby 1.9.3和Rails 3.2.3。JavaScript将无法在我的Rails应用程序中工作

我有两个js文件在/ app /资产/ JavaScript的:

application.js 
main.js 

我创造了这个main.js.在这里面有这个代码

$(document).ready(function() { 
    alert('Hello world!'); 
}); 

我的application.js有以下几点:

//= require jquery 
//= require jquery_ujs 
//= require_tree . 
//= require main.js 

当我打开我的应用程序,没有警告消息弹出!

开放的源代码,我看到的地方所有的js文件:

<script src="/assets/jquery.js?body=1" type="text/javascript"></script> 
<script src="/assets/jquery_ujs.js?body=1" type="text/javascript"></script> 
<script src="/assets/main.js?body=1" type="text/javascript"></script> 
<script src="/assets/application.js?body=1" type="text/javascript"></script> 

我做错了???

+0

如果在浏览器中打开'/assets/main.js?body = 1'路径,你会看到什么(例如http:// localhost:3000/assets/main.js?body = 1) –

+0

我看到应该在那里的代码:$(document).ready(function() \t alert(“Hello world!”); }); –

+0

你有没有检查任何控制台输出 - 在Chrome或IE中按f12 ... – Adrian

回答

0

好吧,我犯了一个错误。 为了抽象的目的,我给出了关于我的js文件名的错误信息。 我的原始名称是advert.js,无论出于何种原因,它都不会以js的形式执行。 我记得我在这个项目中使用了advert.css,即使它被加载,它也没有被rails识别为css。我把那个advert.css改名为popup.css,它工作,所以它现在用我的advert.js。将其重命名为popup.js并且可行!

1
//= require_tree . 

应该是最后一行始终在您的application.js文件

$(document).ready(function() { 
    alert('Hello world!'); 
}) 

并不需要最后的分号,也

+0

thx,改变了,但仍然是同样的问题... –

0

的jquery.jsjquery_ujs.js不在您的资产文件夹根据您的帖子

+0

没错,但我可以通过http:// localhost:3000/assets/jquery.js?body = 1和http:// localhost:3000/assets/jquery_ujs.js?体= 1。 我想jquery-rails宝石处理这个 –

0

尝试写alert($);console.log($);之上main.js

$ undefined?

相关问题