2015-12-01 24 views
0

在我的應用程序/ views/phrases/_forms.html.erb中,我有一個帶有id的按鈕,我想用id預覽部分顯示或隱藏特定部分。將JavaScript文件與Rails中的特定視圖文件夾關聯的位置?

<%= button_tag(type: 'button', class: "btn btn-default", id: 'preview-button') do %> 
    Preview 
<% end %> 

<section id="preview-section"> Some Content </section> 

我不知道把jquery放在rails應用程序的哪裏。

$('#preview-button').click(function() { 
    alert("Preview button was clicked"); 
}); 
+0

你可以顯示'application.js'文件嗎? – akbarbin

回答

1

1)您可以在自定義的js文件中還添加以下代碼: -

# app/assets/javascripts/custom.js 
$(document).on('click', '#preview-button', function(){ 
    alert("Preview button was clicked"); 
}); 

包括的application.js文件custom.js: -

//= require custom.js 
or 
//= require_tree .(It will includes all js files in javascripts folder) 

2)你可以在javascripts文件夾中創建一個帶有名稱短語的文件夾,並在/ app/assets/javascripts /短語中創建js文件,然後在以下應用程序中需要此文件夾: -

//= require_tree ./phrases (requires all js files in phrases folder) 
+0

謝謝user3506853。它正在工作。 –

1

app/assets/javascripts/phrases/,它應該是Rails風格。

app/assets/javascripts下的所有js都會壓縮並縮小到生產中的application.js

$(function(){ 
    $('#preview-button').click(function() { 
    alert("Preview button was clicked"); 
    }); 
}) 
+0

當我按下按鈕時,它不會顯示警報。默認情況下,app/assets/javascripts之後沒有任何短語文件夾。我製作了短語文件夾並在其中製作了phrase.js。 –

+0

我更新了答案,您需要確保DOM已準備就緒 – richfisher

+0

謝謝richfisher。它正在工作。 user3506853解釋瞭如何在短語文件夾中包含js文件。 –

相關問題