2012-05-09 88 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?

相關問題